【问题标题】:HTML Button needing double click (jQuery)需要双击的 HTML 按钮 (jQuery)
【发布时间】:2011-12-15 02:05:45
【问题描述】:

我遇到了一个打开 jQuery 弹出窗口的 html 按钮的问题,它需要点击 2 次才能真正打开,

jquery代码为:

$(\'#RequestSupport2\').submit(function() {
    var values = {};
    $("#RequestSupport2 :checked").each(function(key, value) {  
        values["check["+key+"]"] = $(this).val();
    });
    var values2 = $.param(values);

    $("#requestsupport").colorbox({href:"URLdetail.php?action=request_support&"+values2});
    return false;
});
    });

非常感谢任何帮助

干杯

【问题讨论】:

  • 你试过用 .click 代替 .submit 吗?
  • 当我使用 .click 时,它不允许我在提交表单之前检查所有选项(表单包含复选框,然后提交到颜色框)
  • 您可以设置某种验证标志,如果满足条件,则使用 sumbit 事件。
  • 你想做什么?如果您使用 jQuery 验证插件,you do not actually have to "submit" the form in order to do validation。因此,您永远不必使用 preventDefault()return false 阻止提交。
  • 这个想法是表单提交(有不同的复选框)并在颜色框中打开结果

标签: jquery button click submit double


【解决方案1】:

尝试点击事件:

$('#button').click(function(e){ e.preventDefault() })

这将阻止提交表单...

【讨论】:

    【解决方案2】:

    一目了然的几个问题。为什么在初始选择器中使用转义字符?使用$('#RequestSupport2') 而不是$(\'#RequestSupport2\')。 Emmanuel N 是正确的。提交是表单事件,而不是按钮事件。确保您的 ID 为 RequestSupport2 的按钮是 button not submit 类型(除非您的意图是在没有 Javascript 的情况下发布表单),然后使用 jQuery 来处理点击事件。你也可以试试$("input:checked", "#RequestSupport2") 而不是$("#RequestSupport2 :checked")。如果这些都没有帮助,我会很难过。

    【讨论】:

    • 嗨,按钮 id 是 RequestSupport2,我们使用转义字符,因为它以 echo ',,, 开头,我们已经尝试过您提到的方法,但没有成功,想法是表单提交并在颜色框中打开
    猜你喜欢
    • 2015-11-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多