2012-07-28 75 views
0

有两个选择按钮需要客户端验证。用户必须选择其中一个,如果用户选择其中一个,另一个将自动禁用。如何使用JavaScript禁用HTML表单元素?

这是我的脚本:

<html> 
    <head> 
     <script type="text/javascript"> 
     function Check() //this the funciton for diasbled 
    { 
     var x =document.getElementById("supexp1"); 
     var y =document.getElementById("supexp2"); 

     if(x.value != "") 
     { 
     document.form1.supexp2.disabled=true; 
     } 
     else if(y.value != "") 
     { 
     { 
     document.form1.supexp1.disabled=true; 
     } 
     } 
    } 

     </script> 

    </head> 
    <body> 
    <form method="POST" action="destination.php" id="form1"> 
     <select name="SUPEXP" id="supexp1" data-native-menu="false" onChange="Check()"> 
      <option >Ekspedisi Local1</option> //this selection 1 
      <option >Ekspedisi Local2</option> //this selection 1 
      <option >Ekspedisi Local3</option> //this selection 1 

     </select> 
    <select name="SUPEXP" id="supexp2" data-native-menu="false" onChange="Check2()"> 
      <option >Ekspedisi Expor2</option> //this selection 2 
      <option >Ekspedisi Expor2</option> //this selection 2 
      <option >Ekspedisi Expor2</option> //this selection 2 


    </select> 
    </form> 
    </body> 
</html> 

我使用jquerymobile框架和选择连接到数据库。该代码(JavaScript)未运行。

+1

你在哪里导入jquerymobile? – 2012-07-28 04:15:39

+0

@LarryBattle我支持标签之间的Jquery手机..,有什么问题吗? – MudMan23 2012-07-28 04:19:58

回答

1

我想获得所选项目的价值,你需要使用一些这样的事

var e = document.getElementById("supexp1"); 
    var x = e.options[e.selectedIndex].value; 

,而不是

var x =document.getElementById("supexp1"); 

做同样的Y的

+0

谢谢,我会试试 – MudMan23 2012-07-28 04:22:45

+0

告诉我,如果它的工作:) – 2012-07-28 04:26:02

+0

它不工作,和mybe我有一个错误如何把它在scipt? – MudMan23 2012-07-28 04:35:01

3

我希望这是你试图根据你的描述在这里做的是jsfiddle

$(document).ready(function() { 
     $('#supexp1').change(function() { 
     $('#supexp2').attr("disabled" , "disabled") 
     }); 
     $('#supexp2').change(function() { 
     $('#supexp1').attr("disabled" , "disabled") 
     });  
    });​ 
+0

谢谢你的回答,它如果我不使用jquery手机,在js小提琴中,如果我检查jqm,它不工作。 – MudMan23 2012-07-30 00:46:15

1

试试这个代码

if(x.value != ""){ 
    document.getElementById("supexp2").disabled=true; 
} else if(y.value != "") { 
    document.getElementById("supexp1").disabled=true; 
}