2013-04-04 49 views
3

我有一個表有每個行(是/否)下拉菜單,我想用一個按鈕來更改使用jQuery將其下拉爲Yes。 這就是我努力: HTML:jQuery按鈕切換下拉是/沒有值的表中的所有行

<select name="activeFlag"> 
    <option value="true">Yes</option> 
    <option value="false">No</option> 
</select> 
<br /> 
<input type="button" value="Activate All" id="activateAllButton"> 

的jQuery:

$(document).ready(
     function() 
     { 
      jQuery('#activateAllButton').button(); 
      $('#activateAllButton').click(
      function() 
      { 
       $('select>option:eq(0)').attr('selected', true); 
      }); 
     }); 

任何幫助,將不勝感激。

回答

1

讓我知道如果這個代碼對你的作品

$("#activateAllButton").click(function() { 
    $("#myTable td select[name='activeFlag']").val('True'); 
}); 

jsFiddle

+0

是這個工程,但我只使用'select [name = activeFlag]'。 – DhawalV 2013-04-04 20:50:39

3

只是要單擊處理:

$('#activateAllButton').click(function() { 
    $('select').val('true'); 
}); 

jsFiddle example

+0

謝謝,我也必須使用名字雖然爲斯特凡建議! – DhawalV 2013-04-04 20:49:29

+0

是的,如果你有多個選擇比你不得不比'$('select')'更具體。 – j08691 2013-04-04 20:55:54

3

不是.attr(),使用.prop()

$(document).ready(
     function() 
     { 
      jQuery('#activateAllButton').button(); 
      $('#activateAllButton').click(
      function() 
      { 
       $('select>option:eq(0)').prop('selected', true); 
      }); 
     }); 

DEMO: http://jsfiddle.net/dirtyd77/UKKKR/1/

1

其他2個答案都是對的,但我只是想展示使用緩存的更高效的版本:

$(document).ready(function() 
{ 
    var $buttons = $('#activateAllButton'), 
     $select = $('select'); 

    $buttons.button().on('click', function() 
    { 
     $select.val('true'); 
    }); 
}); 

See working jsFiddle demo