Struts-jquery диалог подтверждения + идентификатор ссылки - PullRequest
0 голосов
/ 21 июля 2011

Я использую struts2-jquery и пытаюсь создать модальное диалоговое окно для подтверждения удаления чего-либо.Я не знаю, как передать идентификатор или нажать «ОК» для завершения действия.

Ниже приведен мой код для создания диалога на основе struts2-jquery:

<sj:dialog
    id="anchordialogconfirm"
    buttons="{
            'OK':function() {               
                //id of link is needed to c
                $(this).dialog('close');
            },
            'Cancel':function() {  $(this).dialog('close'); }
            }"
    resizable="false"
    autoOpen="false"
    modal="true"
    title="Remove?"
>
 Are you sure you want to remove it?
</sj:dialog>

<sj:a openDialog="anchordialogconfirm" id="71" cssClass="deleteemp">Delete</sj:a>

Очевидно,если я добавлю href = '' в якорь, то откроется диалоговое окно с этой ссылкой, вместо того, чтобы получить модальное диалоговое окно подтверждения.

Как я могу получить идентификатор якоря?Я хочу, чтобы идентификатор ссылки был удален, или, по крайней мере, подавлял ее, пока она не станет «ОК».

1 Ответ

1 голос
/ 20 января 2012

Вы могли бы использовать вспомогательную переменную для хранения данных, отправляемых в диалоговое окно.

В ссылку вы бы поместили что-то вроде этого:

<sj:a openDialog="anchordialogconfirm" onclick="aux=%{#attr.obj.id};" href="#">Remove<sj:a>

И вы 'ждете этогозначение в вашем диалоге:

<sj:dialog
            id="anchordialogconfirm"
            buttons="{
            'OK':function() {
            $('#main').load('yourUrl.action?id='+aux);
            $(this).dialog('close');
            },
            'Cancel':function() {  $(this).dialog('close'); }
            }"
            resizable="false"
            autoOpen="false"
            modal="true"
            title="Remove?"/>
...