【发布时间】:2013-11-23 11:38:21
【问题描述】:
我在 Visual Studio 2012 中的 ASP.NET MVC4 应用程序,我有一个下拉列表如下:
<select name="ddlID" id="ddlID">
<option value="1">None</option>
<option value="2">White ($4.72)</option>
<option value="3">Black ($5.90)</option>
<option value="4">Blue ($5.90)</option>
</select>
用户从列表中选择一个项目后,如果选择“White ($4.72)”,我需要将所选文本的显示更改为“White”,如果选择“Black ($5.90)”,则更改为“Black”等.
我写的更改如下:
$('#ddlID').change(function () {
var selText = $('#ddlID option:selected').text();
var i = selText.indexOf(" ");
$('#ddlID option:selected').text(selText.substring(0, i));
});
除了如果用户改变主意并再次单击以选择不同的项目或再次查看列表,上述代码有效,之前选择的项目仍显示为修改后的文本。例如,如果用户选择“白色(4.72 美元)”,则显示将正确更改为“白色”,但如果用户改变主意并再次单击 dropdwon 以决定他/她想要选择哪些,用户会看到以下列表:
None
White
Black ($5.90)
Blue ($5.90)
一旦用户再次点击,我需要将原始列表显示为:
None
White ($4.72)
Black ($5.90)
Blue ($5.90)
请帮忙。
谢谢..南
【问题讨论】:
标签: javascript jquery asp.net