【问题标题】:trouble with confirmationboxes when submitting a form提交表单时出现确认框问题
【发布时间】:2011-03-02 15:39:51
【问题描述】:

我正在尝试比较选择字段的一些值。 提交表单时,我想检查值是否相等。

嗯...我这里有两个问题。

  1. 我第一次提交表单时没有比较这些值。 示例:我为 id='idx' 和 id='idy' 选择 option3。在我的情况下 option3 等于 option3。当我提交表单时,应该有一个确认框,因为值是相等的。没有出现确认框。我用设置的值再次调用该站点并提交表单;出现确认框。我为 id='idx' 选择了选项 1。这意味着 id='idx' 和 id='idy' 的值不相等。但现在该框又出现了。

我想要的是,当我提交表单时,应该比较值。如果它们相等,则会出现一个确认框。

2.不知何故,我的代码只检查一个条件。但是我的代码中的两种情况可能都是真的。我该如何解决?

这是我的代码:

  
var x = $('#idx option:selected').val();
var y = $('#idy option:selected').val();
var z = $('#idz option:selected').val();

$('#myform').submit(function() {
    if (x === y ) {
        if (confirm('text') == true){
            return true;
        } else {
            return false;
        }
    }
    if (x === z ) {
            if (confirm('text') == true){
            return true;
        } else {
            return false;
        }
    }
});

如果有任何问题,请提出。 感谢您的帮助。

【问题讨论】:

    标签: javascript jquery forms confirmation


    【解决方案1】:

    首先,您应该将 $('...').val() 行放在提交函数中,否则它们将在页面加载时获取选择框的值。

    其次,一旦你返回真或假,它就会退出那个提交函数,所以当它失败时你应该返回假,或者继续直到你的条件结束,然后在最后有一个返回真。

    【讨论】:

    • 我把这些行放在我的提交函数中。有用。谢谢你。 “失败时返回 false”是什么意思?
    • 如果confirm函数等于false,则返回false,否则不返回true,直接跳过,进入下一个条件。然后在提交函数结束时,返回 true。
    猜你喜欢
    • 1970-01-01
    • 2019-12-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多