0

我有一个返回新页面的帖子。该页面有一个<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();
4

1 回答 1

1

我写了整个问题,然后我的同事为我回答了它,所以也许它会帮助其他人......

$(".submitMapping").button();需要放置在 AJAX 调用的成功部分。由于 AJAX 是异步的,因此.button()在您的新按钮出现在页面上之前发生。如果你放在它$(".submitMapping").button();之后,closestRow.after(res.d);它会在它被放置在页面上时调用它。

于 2013-07-23T18:52:16.007 回答