0

document.ready に読み込まれるプラグインレート ( http://wbotelhos.com/raty ) があり、DOM の一部をリロードするボタンをクリックするとページのコンテンツが変更され、ドキュメントは「再計算」される準備ができていません。すべてのJavaScriptをリロードしません(他にも同様の動作があります)このソリューションを試しましたが、成功しませんでした

function star(){
alert("star");
...code plugin...
}

$(document).ready(function() {
    star();
});

$.ajax({
        ..code.. 
        done: function(creaStella) {
            alert("D");
            star();
        },
        complete:function(){
            alert("C");
star();
        },

    });

ajaxを呼び出した後、アラート( "スター")がありますが、divが入力されていません

4

2 に答える 2

0

$.ajax の不適切な使用

 $.ajax({
    ..code..
    success: function(creaStella) {  
         //code to populate div goes here
        alert("complete");
        star();
    }
}).done(function(){
    //or here
   alert("complete2");
 });

success/done を show (または両方) として使用します。

于 2013-09-07T12:00:15.963 に答える
0

私はこの方法で解決します..(promise().done)は、dosenが機能しない前にjquery validateプラグインでも形成されます

function star(){
    //plugin star    
}

$(document).ready(function() {
    formJqueryValidate1();
    formJqueryValidate2();
    star();
});


function formJqueryValidate1() {
    //my check

function formJqueryValidate2() {
    //my check
}


$.ajax({

    success: function(msg) {
        $('#myid').html(msg.template).promise().done(function(){
            formJqueryValidate1();
            formJqueryValidate2();
            star();
        });
    }

}

});
于 2013-09-07T13:23:43.537 に答える