【发布时间】:2012-09-05 07:12:24
【问题描述】:
我有一个文本框和一个 DropDownList。 DropDownList 是根据文本框中的输入填充的。我遇到了一些问题,DropDownList 没有正确填充。
一个是当我在文本框中输入一些内容时,我可以选择到 DropDownList 并正确填充它。但是,如果我决定要更改文本框中的内容并在其中键入其他内容,然后尝试再次使用 Tab 键切换到 DropDownList,它不会更新。
另一个问题是,当我开始在文本框中输入内容时,我会弹出一个自动完成列表,我可以单击一个选项让它为我填充文本框,但是当我这样做时,DropDownList 没有被填充。
这是我必须填充 DropDownList 的 javascript。
$('#textFrame').live('change', function (event) {
$.ajax({
type: 'POST',
url: '@Url.Action("GetDirectors", "HostScan")',
data: { frame: $(this).val() },
success: function (data) {
var markup = '';
for (var x = 0; x < data.length; x++) {
markup += '<option value="' + data[x].Value + '">' + data[x].Text + '</option>';
}
$('#DirectorList').html(markup).show();
}
});
});
我应该改变什么来完成这项工作?
提前感谢您的帮助!
【问题讨论】:
-
哟,
.live已弃用:api.jquery.com/live 如果您热衷于旧帖子:)stackoverflow.com/questions/11115864/… 希望它有所帮助,请阅读此内容。请尝试使用.on事件 -
我尝试过使用 .on,但我似乎根本无法让它工作。甚至达不到我 .live 工作的水平。
-
我认为您需要将您的 Jquery 升级到此:
<script type='text/javascript' src='https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js'></script>then.on` api 将被识别!:) -
你说得对,升级到 jQuery 可以识别 .on ,但这并不能完全解决我的问题。仅使用 .on 而不是 .live 时,我仍然遇到同样的问题。不过谢谢!
标签: jquery