2012-05-20 2 views
0

Я создал и приложение, использующее Tapestry5-JQuery с включенным JQuery UI. Я создал страницу с диалогом Jquery, определенный следующим образом:Tapestry5-JQuery Dialog Button События не срабатывают

<t:form> 
    <t:jquery.dialoglink t:dialog="dlgUrl">Show Dialog</t:jquery.dialoglink> 

    <t:jquery.dialog t:clientId="dlgUrl" params="dlgUrlParams"> 
    <table class="dlgContent"> 
     <tr> 
      <td><t:label for="urlName" class="dlgLabel" /></td> 
      <td><t:textfield t:id="urlName" value="name" class="dlgComponent" label="Name:" /> 
      </td> 
     </tr> 
     <tr> 
      <td><t:label for="url" class="dlgLabel" /></td> 
      <td><t:textfield t:id="url" value="url" class="dlgComponent" label="Url:" /> 
      </td> 
     </tr> 
    </table> 
    <div class="dlgBtnAlign"> 
     <t:submit class="ui-button ui-widget" value="Ok" t:id="dlgUrlOk"/> 
    </div> 
    </t:jquery.dialog> 
</t:form> 

страница связан классом Java является следующим:

public class DialogTestPage { 
public JSONObject getDlgUrlParams() { 
    JSONObject jsonObject = new JSONObject(); 
    jsonObject.put("title", "URL"); 
    jsonObject.put("modal", "true"); 
    jsonObject.put("dialogClass", "dlgFileAdjust"); 
    return jsonObject; 
} 

@OnEvent(value = EventConstants.SELECTED, component = "dlgUrlOk") 
void onClickDlgUrlOk() { 
    //Run code after clicking ok 
} 

void onSuccess(){ 
    //Run code after form submit 
}} 

При запуске приложения, кнопка «Ok» не срабатывает SELECTED Событие, и ни обработчик onSuccess.

Спасибо.

ответ

1

DialogLink не запускает никаких событий, DialogAjaxLink делает (EventConstants.ACTION)! DialogAjaxLink также позволяет вам обновлять зону.

<t:jquery.dialogajaxlink t:dialog="dlgUrl" t:zone="myZone">show dialog</t:jquery.dialogajaxlink> 

http://tapestry5-jquery.com/components/docsjquerydialog

Если вы хотите событие успеха уволят вам необходимо отправить форму. Либо используя кнопку отправки, либо если вы предпочитаете ссылки, вы можете использовать компонент LinkSubmit: http://tapestry5-jquery.com/core/docslinksubmit

+0

Моя проблема не связана с отображением диалога с диалоговой ссылкой. Моя проблема заключается в том, что кнопки внутри диалоговых меток не запускают события. Спасибо. – dovahkiin

+0

Хорошо, мое плохое. Проблема в том, что вы не можете обернуть диалог в форме. Плагин перемещает диалоговый контейнер в нижней части DOM, поэтому кнопка отправки на самом деле не находится внутри формы. – criedel

+0

Спасибо. Вставка тегов формы внутри t: jquery.dialog решила проблему. – dovahkiin

Смежные вопросы