首页 新闻 会员 周边 捐助

jquery事件绑定问题

0
悬赏园豆:20 [已解决问题] 解决于 2013-04-02 16:15
 $(document).on('click', '#login a,#reg a,#log a', function () {
                    var me = this;
                    $.get(this.href, function(data) {
                        $('#registerpanel').html(data).dialog({
                            title: $(me).text(),
                            width: 500,
                            hide: true,
                        });

                    });
                    return false;
                });
<section id="loginForm">
<h2>使用本地帐户登录。</h2>
@using (Html.BeginForm(new { ReturnUrl = ViewBag.ReturnUrl })) {
    @Html.AntiForgeryToken()
    @Html.ValidationSummary(true)

        <fieldset class ="login">
            <legend>“登录”表单</legend>
            <ol>
                <li>
                    @Html.LabelFor(m => m.UserName)
                    @Html.TextBoxFor(m => m.UserName)
                    @Html.ValidationMessageFor(m => m.UserName)
                </li>
                <li>
                    @Html.LabelFor(m => m.Password)
                    @Html.PasswordFor(m => m.Password)
                    @Html.ValidationMessageFor(m => m.Password)
                </li>
                <li>
                    @Html.CheckBoxFor(m => m.RememberMe)
                    @Html.LabelFor(m => m.RememberMe, new { @class = "checkbox" })
                </li>
            </ol>
            <input id="btlogin" type="submit" value="登录" />
        </fieldset>
    <p id="reg">
    @Html.ActionLink("注册", "Register", "Account")
    </p>
}
</section>


多个元素绑定同一事件的时候,发现点击输入框后,焦点消失了,需要点住输入框才能输入,这是怎么回事呢?

sidecore的主页 sidecore | 初学一级 | 园豆:2
提问于:2013-04-02 10:36
< >
分享
最佳答案
0
return false;这个的问题

收获园豆:20
丫的 | 小虾三级 |园豆:1575 | 2013-04-02 15:15
这样试试
$(document).on('click', '#login a,#reg a,#log a', function (event) {
                    var me = this;
                    $.get(this.href, function(data) {
                        $('#registerpanel').html(data).dialog({
                            title: $(me).text(),
                            width: 500,
                            hide: true,
                        });

                    });
                    event.stopPropagation();
                });
丫的 | 园豆:1575 (小虾三级) | 2013-04-02 15:20

@tomcat1988: 原因找出来了,是这个脚本有问题$(document).on('click', 'form', function()  造成click事件重复了。

sidecore | 园豆:2 (初学一级) | 2013-04-02 15:31
其他回答(2)
0

原因可能是:

脚本有问题$(document).on('click', 'form', function()  造成click事件重复了。

月下花弄影 | 园豆:312 (菜鸟二级) | 2013-04-02 16:02
0

改为$(document).on('submit', 'form', function() 

sidecore | 园豆:2 (初学一级) | 2013-04-02 16:14
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册