2012-02-13 48 views
1

我有这个示例的简单代码来根据select元素值启用和禁用表单。根据选择的值启用和禁用表单

$("#myoptions").change(function(){ 
    var item = $("#myoptions option:selected").val(); 
    $("#target").html(item); 
    if(item == "empty"){ 
     $("#addForm").children().attr("disabled","disabled"); 
     /*else{ 
     $("#addForm").children().removeAttr("disabled"); 
     } */   
    } 
}); 

问题是它可以被禁用,但是当试图再次启用它不起作用并阻止代码执行。

使能代码被注释掉看看这个:http://jsfiddle.net/BbZw8/3/

回答

1

else声明是if语句中 - 这个问题只是由于不正确地放在右大括号。除此之外,代码的工作。

试试这个:

$("#myoptions").prepend("<option value='empty'>choose item</option>"); 
$("#myoptions option:first").attr("selected", "selected"); 


$("#myoptions").change(function() { 
    var item = $("#myoptions option:selected").val(); 
    $("#target").html(item); 

    if (item == "empty") { 
     $("#addForm").children().attr("disabled", "disabled"); 
    } else { 
     $("#addForm").children().removeAttr("disabled"); 
    } 
}); 

Example fiddle

+0

感谢,非常的抱歉:d 现在让我告诉更大的代码 链接将在一分钟内被更新 – 2012-02-13 13:20:56

相关问题