2012-10-26 71 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

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