onchange 找到这个父级
我有几个具有以下结构的选择框(至少 5 个)
<li>
<div>
<select name="sb[]">...</select>
</div>
</li>
当 sb 更改时,我想要进行 ajax 调用,传递所选值并用从 ajax 接收的 html 替换父 li 的内容。
我尝试了以下方法
onchange="
$.get('file.php', { action: 'dothis'}, function(html) {
$(this).parent('li').html(html);
});
"
,但不起作用
任何帮助
I have a few select boxes (at least 5) with the following structure
<li>
<div>
<select name="sb[]">...</select>
</div>
</li>
When a sb change i want to make an ajax call pass the selected value and replace the content of parent li with the html receive from ajax.
I tried the following
onchange="
$.get('file.php', { action: 'dothis'}, function(html) {
$(this).parent('li').html(html);
});
"
but is not working
Any Help
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
如果您真的非常愿意,您仍然可以在 onchange 属性中执行此操作。问题是(正如所指出的)双重的:首先,ajax回调中的this与change事件处理程序中的this不再相同,其次你应该使用closest()或parents():
或
If you really, really want to, you could still do this in the onchange attribute. The problem is (as pointed out) twofold: firstly, the this inside the ajax callback is not the same this anymore as in the change event handler, secondly you should be using closest() or parents():
or