在下拉列表更改中,变量val未在replacewith中更改。它仍然设置为初始值但未更新。
alert(val)确实给出了正确的值。 删除val也无济于事。
$(document).ready(function() {
$("#answerDropdown").change(function() {
var val = $(this).val();
if (val != '') {
$("#filler").replaceWith('<div id="replaced"> ' + val + '</div>');
alert(val);
delete val;
}
});
});
答案 0 :(得分:3)
问题是在第一次更改后你用id ='filler'
替换div因此第二次和后续的onchange不会有一个id ='filler'的元素 - 所以代码不会运行
你可以这样做
$("#filler").html('<div id="replaced"> ' + val + '</div>');
这将导致填充div具有内部div
或
$("#filler").replaceWith('<div id="filler"> ' + val + '</div>');
与
相同$("#filler").text(val);