繁体   English   中英

对话框中的jQuery火灾事件

[英]jquery fire event in dialog

如何将选择更改事件保存到不触发的对话框中?

我的HTML:

    <body>
    <div id="dialog_message"></div>
    </body>

我的JAVASCRIPT:

    var titolo = 'my dialog';
    var s="<select id=\"MYSEL1\" name=\"MYSEL1\"><option value=\"A\">opt A</option><option value=\"B\">opt B</option></select><br><select id=\"MYSEL2\" name=\"MYSEL2\"></select>";

    $( "#dialog_message" ).dialog({
        resize: 'auto',
        draggable: true,
        resizable: false,
        closeOnEscape: false,
        open: function() {      // open event handler
            $(this).parent().find(".ui-dialog-titlebar-close").hide();
            $(this).html(s);
        },
        buttons: {
            Annulla: function() {
                $( this ).dialog( "close" );
            }
        },
        title: titolo
    });
    $("select").selectmenu();
    $("#MYSEL1").on("change", function() {
        var n=$(this).attr("id");
        var dd = $("option:selected", this);
        var d = $(this).val();
        alert (d);  
        $("#MYSEL2").empty(); // remove old options
        if (d=='A') {
            $("#MYSEL2").append('<option value=\"AA\">opt AA</option><option value=\"AAA\">opt AAA</option>');
        } else {
            $("#MYSEL2").append('<option value=\"BB\">opt BB</option><option value=\"BBB\">opt BBB</option>');
        };
    }); 

您可以在jsfiddle中找到以下网址https ://jsfiddle.net/t0L915po/5/

对话框打开后,您将需要添加事件以选择元素。 使用以下代码:

var titolo = 'my dialog';
var s="<select id=\"MYSEL1\" name=\"MYSEL1\"><option value=\"A\">opt A</option><option value=\"B\">opt B</option></select><br><select id=\"MYSEL2\" name=\"MYSEL2\"></select>";

$( "#dialog_message" ).dialog({
    resize: 'auto',
    draggable: true,
    resizable: false,
    closeOnEscape: false,
    open: function() {      // open event handler
        $(this).parent().find(".ui-dialog-titlebar-close").hide();
        $(this).html(s);
        $("#MYSEL1").on("change", function() {
    var n=$(this).attr("id");
    var dd = $("option:selected", this);
    var d = $(this).val();
    alert (d);  
    $("#MYSEL2").empty(); // remove old options
    if (d=='A') {
        $("#MYSEL2").append('<option value=\"AA\">opt AA</option><option value=\"AAA\">opt AAA</option>');
    } else {
        $("#MYSEL2").append('<option value=\"BB\">opt BB</option><option value=\"BBB\">opt BBB</option>');
    };
}); 
    },
    buttons: {
        Annulla: function() {
            $( this ).dialog( "close" );
        }
    },
    title: titolo
});
$("select").selectmenu();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM