Как отобразить диалоговое окно Jquery на asp: нажатие кнопки - PullRequest
1 голос
/ 11 марта 2011

Я новичок в JQuery и пытаюсь отобразить диалоговое окно подтверждения Да / Нет, когда пользователь нажимает кнопку aspx. Когда диалоговое окно отображается для пользователя, он может нажать кнопку «Да» или «Нет», и в зависимости от действия пользователя я хочу выполнить другой код, присутствующий в коде позади файла, то есть в aspx.cs

Я пытался использовать следующий код, но не достиг своей цели.

Код присутствует на странице aspx:

<link href="jquery-ui-1.8.10.custom.css" rel="stylesheet" type="text/css" />
<script src="jquery-1.4.4.min.js" type="text/javascript"></script>
<script src="jquery-ui-1.8.10.custom.min.js" type="text/javascript"></script>

<script>

    jQuery(document).ready(function() {

        jQuery("#myButton").click(showDialog);

        //variable to reference window
        $myWindow = jQuery('#myDiv');

        //instantiate the dialog
        $myWindow.dialog({
            autoOpen: false,
            width: 400,
            modal: true,
            resizable: false,
            buttons: {
                "Yes": function() {

                },
                "No": function() {
                    $(this).dialog("close");
                }
            }
        });
    }

    );
    //function to show dialog   
    var showDialog = function() {
        //if the contents have been hidden with css, you need this
        $myWindow.show();
        //open the dialog
        $myWindow.dialog("open");
    }

    //function to close dialog, probably called by a button in the dialog
    var closeDialog = function() {
        $myWindow.dialog("close");
    }

</script>

<form id="testconfirmJQ" name="testconfirmJQ" runat="server">
    <fieldset>
    <legend>jQuery UI Modal Submit</legend>
    <p><label for="email">E-mail:</label><br />
    <input id="emailJQ" type="text" name="emailJQ" value="" /></p>
    <p>
        <asp:Button ID="myButton" runat="server" Text="Button" onclick="myButton_Click" />
    </fieldset>
    </form>

    <div id="myDiv" title="Verify Form jQuery UI Style"><p><span class="ui-icon ui-icon-alert" style="float:left; margin:0 7px 0 0;"></span> You entered your e-mail address as:</p><p id="dialog-email"></p><p>
    If this is correct, click Submit Form.</p><p>To edit, click Cancel.<p></div>
</form>

В коде позади обработчик событий пока пуст. Любые предложения будут оценены!

Ответы [ 2 ]

1 голос
/ 11 марта 2011

Уберите атрибут onclick кнопки asp :. В этом не должно быть необходимости - вы не выполняете действия на стороне сервера.

Вы также можете изменить его на кнопку типа <input>.

0 голосов
/ 11 марта 2011

Поскольку jQuery находится на стороне клиента, и вы хотите выполнить код на стороне сервера в своем файле .aspx.cs, вы можете попробовать сохранить значение, указывающее, что пользователь ответил на приглашение, и они выполняют обратную передачу, чтобы сторона сервера могла выполнитьсоответствующий код.

Вы можете использовать Button.OnClientClick Свойство , которое может выполнить код на стороне клиента перед обратной передачей.По-прежнему используйте диалоговое окно jQuery.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...