【发布时间】:2014-03-09 08:36:20
【问题描述】:
我有三个依赖选择。 第一个,有一些价值观。
<select id="first">
<option value="1">v1</option>
<option value="2">v2</option>
</select>
第二个和第三个是空白的:
<select id="second"></select>
<select id="third"></select>
我想通过 ajax 请求填充空白选择。 所以我这样做:
jQuery('body').delegate('#first','change',function(){
jQuery.ajax(
{
'type':'GET',
'data':{'changed':$('#first').val()},
'url':'myURL1',
'cache':false,
'success':function(html){jQuery("#second").html(html)}});
return false;
});
所以它工作正常。第二个选择已填充,但是......没有为选择“第二”触发“更改”事件。 为了得到这个事件,我写了:
$(document).ready(function()
{
$('#second').live("change", function()
{
alert('test');
});
});
但看不到警报“测试”。如何为第二次选择的动态加载内容捕获此“更改”事件?
【问题讨论】:
-
您是否尝试在 AJAX 的成功回调中添加更改事件的分配?
-
您想在加载数据后立即触发#second 的更改事件吗?如果您手动更改第二个选择,则警报框应显示您的实际代码。
-
您使用的是哪个版本的 jQuery?
-
顺便说一句:我不想混合 jQuery() 和 $()