使用jQuery select更改它不会显示所选选项

前端之家收集整理的这篇文章主要介绍了使用jQuery select更改它不会显示所选选项前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有隐藏的表单,有几个选择字段和一些输入字段.单击按钮应显示该表单并在字段中设置一些值.输入字段用给定的值填充,但我有选择字段的问题.

使用此代码

$("#form select[name=user]").val(value);

具有该值的选项获取属性“已选中”(在Firebug中选中),但选择字段仍显示“选择”(初始)选项.

设置值后我试着做焦点和模糊,但这也不起作用.

有什么建议?

这几乎是标准形式:

<form action="#" id="form" class="fix">
<div class="holder">
    <label>User:</label>
    <select name="user" class="styled">
        <option value="0" selected>Choose</option>
        <option value="1">User 1</option>
        <option value="2">User 2</option>
        </select>
    </div>
</form>

并通过调用jQuery语句:

$("#form select[name=user]").val('2');
$("#form").show();

我在Firebug中得到这个:

<form action="#" id="form" class="fix" style="display:none">
<div class="holder">
    <label>User:</label>
    <select name="user" class="styled">
        <option value="0">Choose</option>
        <option value="1">User 1</option>
        <option value="2" selected>User 2</option>
        </select>
    </div>
</form>

但文本是选择保持“选择”.如果我提交表单,则正确传递该值.

如果我重置表单并选择一些选项,则正确显示所选选项的文本.这对我来说很奇怪.

解决方法

我找到了解决方案.我忘了给改变事件打电话.我不知道jQuery不会自动执行此操作.所以解决方案的代码是:
$("form select[name=user]").val(value).change();

猜你在找的jQuery相关文章