我有一个帖子会返回一个新页面。该页面有一个<a> link </a>
,在页面返回时我会调用$( "a" ).button();
。我已经在原始页面上调用了这个,所以我的所有按钮都已经格式化为JQueryUI按钮。但是,在我发布另一个帖子之前,新按钮没有格式化。有办法吗
$(".mapRelation")
.click(function( event ) {
var closestRow = $(this).closest("tr");
var nextRow = closestRow.next("tr");
$(this).css("display", "none");
if(nextRow.attr("id") != "map"){
$.ajax({
url: "AddTask.aspx/insertMappingRow",
type: "POST",
dataType: "json",
contentType: "application/json; charset=utf-8",
success: function (res) {
closestRow.after(res.d);
},
error: function (res) { debugger; alert("error"); }
});
$("#effect").height("+=25");
$("#toggler").height("+=25");
}
$(".submitMapping").button();
答案 0 :(得分:1)
我写了这整个问题,然后我的同事为我解答了,所以也许它会帮助别人......
$(".submitMapping").button();
需要放在AJAX调用的成功部分。由于AJAX是异步的,因此.button()
会在您的新按钮出现在页面之前发生。如果您将$(".submitMapping").button();
放在closestRow.after(res.d);
之后,它会在页面上放置时调用它。