我的html页面上有这两个jquery脚本,其中一个加载更多结果(如分页),另一个回复用户消息,就像twitter一样!
回复工作(inserts username into textbox)
,当页面处于默认状态时,但是当我加载更多结果时,加载的结果会将用户名插入文本框!!这是两个脚本,
回复jquery:
function insertParamIntoField(anchor, param, field) {
var query = anchor.search.substring(1, anchor.search.length).split('&');
for(var i = 0, kv; i < query.length; i++) {
kv = query[i].split('=', 2);
if (kv[0] == param) {
field.val(kv[1]);
return;
}
}
}
$(function () {
$("a.reply").click(function (e) {
insertParamIntoField(this,"status_id",$("#status_id"));
insertParamIntoField(this,"reply_name",$("#reply_name"));
insertParamIntoField(this, "replyto", $("#inputField"));
$("#inputField").focus()
$("#inputField").val($("#inputField").val() + ' ');
e.preventDefault();
return false; // prevent default action
});
});
loadmore jquery脚本:
$(function() {
//More Button
$('.more').live("click",function()
{
var ID = $(this).attr("id");
if(ID)
{
$("#more"+ID).html('<img src="moreajax.gif" />');
$.ajax({
type: "POST",
url: "ajax_more.php",
data: "lastmsg="+ ID,
cache: false,
success: function(html){
$("ul.statuses").append(html);
$("#more" + ID).remove();
}
});
}
else
{
$(".morebox").html('The End');
}
return false;
});
});
编辑:当我加载更多帖子时,我点击回复页面被引用,以便最终再次隐藏已加载的数据!!
答案 0 :(得分:1)
如果回复按钮被ajax替换,这可能是一种解决方法。
$(function () {
$("a.reply").live(click, function (e) {
insertParamIntoField(this,"status_id",$("#status_id"));
insertParamIntoField(this,"reply_name",$("#reply_name"));
insertParamIntoField(this, "replyto", $("#inputField"));
$("#inputField").val($("#inputField").val() + ' ').focus();
e.preventDefault();
});
});
此外...如果status_id,reply_name,replyto info包含在您的回复按钮中,请确保在单击更多按钮后,每个回复按钮都存在这些数据。