Я хочу получить атрибут виджета smartgwt, который я устанавливаю, как в GWT. Например, в GWT:Как настроить пользовательский атрибут для SmartGWT Widget
//Button creation
Button btn1 = new Button(" Button 1");
Button btn2 = new Button("Button 2");
Button btn3 = new Button("Button 3");
//setting the attribute to button doms
btn1.getElement().setAttribute("data-tracking", "Button 1 clicked");
btn2.getElement().setAttribute("data-tracking", "Button 2 clicked");
btn3.getElement().setAttribute("data-tracking", "Button 3 clicked");
//Global handler to catch all the event in my application
Event.addNativePreviewHandler(new NativePreviewHandler() {
public void onPreviewNativeEvent(final NativePreviewEvent event) {
final int eventType = event.getTypeInt();
switch (eventType) {
case Event.ONCLICK:
System.out.println("on clikc clicked"+Element.as(event.getNativeEvent().getEventTarget()).getAttribute("data-tracking"));
//getting the button attribute
if(Element.as(event.getNativeEvent().getEventTarget()).getAttribute("data-tracking")!=null && !Element.as(event.getNativeEvent().getEventTarget()).getAttribute("data-tracking").equals("")){
googleAnalyticsTrackPageView(Element.as(event.getNativeEvent().getEventTarget()).getAttribute("data-tracking"));
}
break;
}
}
});
Но в SmartGWT, я не был в состоянии установить/получить этот атрибут. Есть ли способ решить эту проблему? У нас есть требование добавить Google Analytics в наши приложения, но проблема, с которой мы сталкиваемся, не может установить атрибут. хотите добавить пользовательский атрибут виджета, где когда-либо его требуется, например (по щелчку вкладок/щелкая на некоторой помощи иконки внутри приложения, много места)
Img helpButtonImage = new Img(HELP_ICON);
helpButtonImage.getElement().setAttribute("data-tracking", "help on purchase order");
ButtonItem loginButtonItem = new ButtonItem();
loginButtonItem.setAttribute("data-tracking", "User clicked on login button");
и который должен быть улов в глобальном обработчике подобный вышеупомянутый способ.
Спасибо за ваш ответ .. но мой запрос здесь задает какой-то пользовательский атрибут для виджета/компонента smartgwt, и то же самое можно извлечь, поймав какое-то событие .. это возможно? –