0

我在表单中有一个选择框并更改了我调用的方式,this.form.submit()以便自动提交表单。
这对我来说很方便,但有一种情况我不希望发生这种情况。
有没有办法有条件地做到这一点?

4

3 回答 3

3

您想检查是否设置了全局变量?

if (typeof(window.globalvar) !== "undefined")
    this.form.submit();

关于属性

onchange='if (typeof(window.globalvar) !== "undefined")this.form.submit()'

jsFiddle 上的示例

于 2013-06-04T19:01:52.903 回答
1

根据您的评论:检查全局变量是否具有特定值的最简单方法是

if (window.yourVariableName === 'yourValue'){
    //submit your form!
}

检查全局变量是否有任何

if (typeof window.yourVariableName !== 'undefined') {
   //submit your form!
}

此外,根据您的评论,停止使用 dom 级别 0 事件处理程序,即

<select id='yourSelect' onchange="this.form.submit()">

你最好的选择是简单地做

document.getElementById('yourSelectId").onchange = function(){ 
    if (typeof window.yourVariableName !== 'undefined') {
       this.form.submit();
    }
};
于 2013-06-04T19:02:18.400 回答
0
         var a=global variable

 function VERIFY(){     
        switch (a) {
            case (a==undefined):
                return false
                break;
            case (a!=undefined):
               alert("all ok");
               this.form.submit()
                break;
        }
     }

<select id="id" onchange="VERIFY();"></select>
//
This might help!!!
于 2013-06-04T19:19:12.087 回答