3

我有一个表,它的每一行都有一个(是/否)下拉菜单,我想使用一个按钮使用 jQuery 将下拉菜单的值更改为是。这就是我正在尝试的: HTML:

<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);
            });
        });

任何帮助,将不胜感激。

4

4 回答 4

3

只需制作点击处理程序:

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

jsFiddle 示例

于 2013-04-04T19:58:25.247 回答
3

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

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

演示:http: //jsfiddle.net/dirtyd77/UKKKR/1/

于 2013-04-04T19:58:36.003 回答
1

让我知道此代码是否适合您

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

jsFiddle

于 2013-04-04T20:06:16.033 回答
1

其他 2 个答案都是正确的,但我只是想展示一个使用缓存的更高效的版本:

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

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

请参阅工作 jsFiddle 演示

于 2013-04-04T20:07:22.997 回答