我有以下JQuery代码,它执行类似Stackoverflow功能,其中用户点击注释链接并显示注释,或者在这种情况下回复成员的状态更新,一般情况下,除非成员发布新状态更新,它使用ASP.net MVC中的ajax异步回发来更新状态更新列表。JQuery异步回发问题,我该如何解决这个问题?
如果你点击列表中的新项目,它会把它们带到一个新的页面上,而不是去做JQuery应该做的事情。
<script type="text/javascript">
$(function() {
$("a[id ^='commentLink-']").click(function() {
match = this.id.match(/commentLink-(\d+)/);
container = $("div#commentContainer-" + match[1])
container.toggle();
if (container.is(":visible")) {
container.load($(this).attr("href"));
} else {
container.html("Loading...");
}
return false; //Prevent default action
});
});
</script>
注:我认为是什么原因造成的事实是,在列表中选择新的项目实际上不是作为列表是通过AJAX在页面上更新,因此新的HTML是不存在的直到页面刷新。
更新好的我会如何使用Paolo Bergantino在他的回答中提到的实时/事件功能来触发一个ASP.net MVC ActionResult?
是啊,这看起来不错,但问题是,DOM元素实际上并不存在......所以这是什么让人困惑的Jquery – dswatik 2009-01-21 20:39:18