Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 当页面加载了name属性但没有';不能使用Jquery属性_Javascript_Jquery_Html_Jquery Ui_Dom - Fatal编程技术网

Javascript 当页面加载了name属性但没有';不能使用Jquery属性

Javascript 当页面加载了name属性但没有';不能使用Jquery属性,javascript,jquery,html,jquery-ui,dom,Javascript,Jquery,Html,Jquery Ui,Dom,单击复选框时,下面的jquery代码将名称属性切换为按钮。添加“名称”属性后,单击该按钮将显示一个模式窗口 问题是:当jquery添加name属性时(我可以看到它是在Elements控制台中添加的),模态窗口代码不起作用。但是,当我加载已经包含name属性的页面时,它可以完美地工作,即,而不是 有什么我忘记的“DOM活动日程”吗 $("#tos-sub").change(function() { if(this.checked) {

单击复选框时,下面的jquery代码将名称属性切换为按钮。添加“名称”属性后,单击该按钮将显示一个模式窗口

问题是:当jquery添加name属性时(我可以看到它是在Elements控制台中添加的),模态窗口代码不起作用。但是,当我加载已经包含name属性的页面时,它可以完美地工作,即,
而不是

有什么我忘记的“DOM活动日程”吗

   $("#tos-sub").change(function() {

            if(this.checked) {

                $('#password-modal-show').attr('name', 'password-modal-show');

            }
            else {
                $('#password-modal-show').attr('name', '');
            }

        });

        $('button[name=password-modal-show]').click(function() {

            $('#password-modal').modal('show');

        });

<input type="checkbox" value="tos-sub" name="tos-sub" id="tos-sub" class="form-left required"/>
<label>
    <span style="font-size: 80%; margin-right: .5em;">I agree to WifiTap&#39;s <a>Terms of Service</a></span>
</label>
<div style="margin-left: 15px;">
    <button type="button" name="" id="password-modal-show" class="btn big-button" role="button">Get wifi!</button>
$(“#tos sub”).更改(函数(){
如果(选中此项){
$(“#密码模式显示”).attr('名称','密码模式显示');
}
否则{
$('#密码模式显示').attr('name','');
}
});
$(“按钮[名称=密码模式显示])。单击(函数(){
$(“#密码模式”).model('show');
});
我同意WifiTap';服务条款
获取wifi!

未建立事件处理程序,因为在设置时,没有具有此名称属性的按钮。 您必须使用委托事件或在复选框更改时设置单击功能。 以下是通过使用委派事件修复的棘手问题:


哦,我知道你在那里做了什么!我有一种感觉,这是因为页面加载时没有带有name属性的按钮,但我不知道如何修复它。非常感谢你的帮助,奥斯卡!
$(document).click(function(e) {
        if(e.target.getAttribute('name')=='password-modal-show') alert('modal');
});