设置选定的选项集中JQuery

rak*_*ela 0 jquery

我需要从列表中设置一个选项,在下拉列表中选中并显示.我有这个代码:

/* some js....*/
........
$.ajax({
    type: "POST", 
    url: url,
    data : mydata,
    success: function(data) {
        $('#format_type option').removeAttr('selected')
        $('#format_type option:eq('+data+')').attr('selected', true);
        $('#format_type option:selected').focus();
    }
});

..............
Run Code Online (Sandbox Code Playgroud)

HTML代码:

echo "<select name='format_type' id='format_type'>";
echo "<option value='1'>Fixed</toption>";
echo "<option value='2'>Year Digit 4[Y---]</toption>";
echo "<option value='3'>Year Digit 3[-Y--]</toption>";
echo "<option value='4'>Year Digit 2[--Y-]</toption>";
echo "<option value='5'>Year Digit 1[---Y]</toption>";
echo "<option value='6'>Month Digit 2[M-]</toption>";
echo "<option value='7'>Month Digit 1[-M]</toption>";
.............
Run Code Online (Sandbox Code Playgroud)

jquery代码确实运行得很好,在ajax响应之后,选择了所请求的选项(我在Inspect Element中看到了),但是列表保持原样,选项'Fixed'保持第一,当我点击列表时,没有选择以下选项(尽管在Inspect Element它有selected='selected').这就是它对ajax响应的看法: 在此输入图像描述

请任何人帮忙.

PSL*_*PSL 5

假设data给出了期权的指数; 使用prop而不是attr可能帮助

 $('#format_type option:eq('+data+')').prop('selected', true);
Run Code Online (Sandbox Code Playgroud)

代替

$('#format_type option').removeAttr('selected')
$('#format_type option:eq('+data+')').attr('selected', true);
Run Code Online (Sandbox Code Playgroud)