当我升级到1.4.1时,以下代码失败,当我回滚到1.3.2时工作正常.
var ddlCountry = $("#<%= this.ddlCountry.ClientID %>");
if (ddlCountry.val() == "") {
ddlCountry.val(address.country);
ddlCountry.change();
}
Run Code Online (Sandbox Code Playgroud)
顺便说一句,问题是<select>列表的值永远不会设置.
是的,这一切都包含在$(document).ready:)
编辑:作为参考,这是我使用的代码:
ddlCountry.find("option").each(function() {
if ($(this).text() == address.country) {
ddlCountry.val($(this).val());
}
});
Run Code Online (Sandbox Code Playgroud)
如果你正在设置值,这将起作用,在jQuery 1.4中必须是值而不是文本,例如:
<select id="ddlCountry">
<option value="1">A</option>
<option value="2">B</option>
</select>
Run Code Online (Sandbox Code Playgroud)
在jQuery 1.3中,这$("#ddlCountry").val("A")
可行: 在1.4中它不一定是:$("#ddlCountry").val("1")
或者,如果您无法更改下拉列表,则可以根据以下文本进行搜索和选择:
ddlCountry.filter(function() {
return $(this).text() == address.country;
})[0].selected = true;
Run Code Online (Sandbox Code Playgroud)
作为参考,这是发生的jQuery更改.从1.4注释:
选项或复选框上的.val("...")不再模糊(它将始终按值选择,而不是按文本值选择).(承诺)
| 归档时间: |
|
| 查看次数: |
6225 次 |
| 最近记录: |