Javascript jQuery在()更改时未触发
我有一个ajax调用,它返回一个JSON对象,其中包含一个select下拉列表,如下所示:Javascript jQuery在()更改时未触发,javascript,jquery,Javascript,Jquery,我有一个ajax调用,它返回一个JSON对象,其中包含一个select下拉列表,如下所示: { "responseCode": 200, "field_value": "1", "field_options": { "175": "Incorrect Listing", "176": "High Return Rate", "177": "Easily Damaged" }, "selectOptions":
{
"responseCode": 200,
"field_value": "1",
"field_options": {
"175": "Incorrect Listing",
"176": "High Return Rate",
"177": "Easily Damaged"
},
"selectOptions": "<select id=\"do_not_order_options_102450\" class=\"input-medium\"><option value=\"\">Choose Option<\/option><option value=\"175\">Incorrect Listing<\/option><option value=\"176\">High Return Rate<\/option><option value=\"177\">Easily Damaged<\/option><\/select>"
}
当我选择一个选项时,它不会开火。。。有人知道可能是什么问题吗
谢谢 您引用的代码将连接到当前存在的匹配选择框的事件处理程序。但是,如果向页面添加更多内容,则不会钩住他们的
change
事件
您可能需要查看事件委派:
$(function() {
$('some container all these selects share').on('change', 'select[id^="do_not_order_options"]', function() {
// Handle change
});
});
jQuery,因此我们可以将它挂接到容器元素上,并使用jQuery的帮助仅为匹配的元素触发我们的处理程序(在本例中为selects)
由于我们将事件挂接到容器上,因此在容器中添加更多的选择会使它们神奇地工作。@JFit:它隐藏在JSON中。向右滚动。大概是JSON的字符串frm被追加到页面中。啊,这就是为什么。。检查TJ的答案。@f00bar:哦,他/她知道这些东西。我想是打字速度给人留下了深刻印象。(我母亲在高中时给我的一些最好的建议是:“你喜欢电脑,去打字。”)@T.J.Crowder对不起,我错过了主播部分
:p
$(function() {
$('some container all these selects share').on('change', 'select[id^="do_not_order_options"]', function() {
// Handle change
});
});