2012-10-26 144 views
1

我有一个表格,我有多个领域,但它是至关重要的两个至少在下拉菜单中进行选择,直到他们,我禁用和重新标记提交按钮的jQuery禁用按钮,直到两个选择字段选择

我使用的领域之一以下,是有办法翻倍,其他领域的ID是#list_name

所以,#category和#list_name必须用值之前提交启用选择

$(document).ready(
function(){ 
    $('#category').change(
     function(){ 
      if ($(this).val()) { 
       $('input:submit').attr('disabled',false); 
       $('#btn_show').addClass('button green'); 
       $("#btn_show").attr('value', 'Add To My List'); 

      } else { 
       $('#btn_show').removeClass('button green'); 
       $('input:submit').attr('disabled',true); 
       $("#btn_show").attr('value', 'Choose a category and list for your item'); 
      } 
     }); 

}); 

我一直使用正常的jQuery多尝试:

$('#category', '#list_name').change(

但它没有工作

回答

5

这将是

$('#category, #list_name').change() 

这其中寻找类元素LIST_NAME

$('#category', '#list_name').change() 

整个代码的上下文内会是这个样子

$('#category, #list_name').change(
     function(){ 
      if ($('#category').val() && $('#list_name').val() ) { 
       $('input:submit').attr('disabled',false); 
       $('#btn_show').addClass('button green'); 
       $("#btn_show").attr('value', 'Add To My List'); 

      } else { 
       $('#btn_show').removeClass('button green'); 
       $('input:submit').attr('disabled',true); 
       $("#btn_show").attr('value', 'Choose a category and list for your item'); 
      } 
     }); 
+0

如果这不起作用 - 也许是因为您的代码是由另一段代码生成的 - 请使用'live'选择器:'$('#category,#list_name')。live('change',function( ){' –

+1

我不认为这是问题,因为它似乎为他的选择元素之一工作。另外,从jQuery 1.7开始,.live()方法已被弃用。建议使用.on()附加需要委托的事件处理程序 –

+0

注意!我住在你看到的过去。 –