2012-04-17 9 views
1

要素(#scheduleLink)にアタッチされたイベントハンドラを発生させたい。 私は、次のJSとページ(ページ1)を持っている:要素にアタッチされたイベントハンドラを呼び出す

$(document).ready(function() { 
    loadPublicationTab(); // load partial veiw via ajax 
    var tab = "@Model.ActiveTab"; 

    if (tab === "#scheduleLink") { 
     $("#scheduleLink").trigger('click'); 
     alert("true"); 
    } 
    else { 
     alert("false"); 
     loadPublicationList(-1, 1); 
    }   
}); 

function loadPublicationTab() { 
    $(".wrap_tabs").load("/Publication/GetPublicationTab?mainPage=" + false + "&isEvent=" + true); 
} 

loadPublicationTab次を返します。

<script type="text/javascript"> 
    $(document).ready(function() { 
     $("#scheduleLink").click(function() { 
      loadScheduleEvent(); 
      $(".wrap_tabs").find("a").removeClass("active"); 
      $(this).addClass("active"); 
     }); 
    }); 
</script> 
// other html 

他のページとtrigerに位置#scheduleLinkは動作しません。どのようにこれを正しく行うには?
ありがとうございます。

+1

'$("#scheduleLink ")。length == 0'私は正しいですか? – gdoron

+0

@gdoron:はい、そうです。 – user348173

+0

scheduleLinkのマークアップを投稿できますか?これらの2ページはどのようにリンクされていますか? – mattytommo

答えて

0

loadPublicationTab関数work async。したがって、#scheduleLinkはdocument.readyにロードされません。あなたはイベントを開始します。 load()関数の成功

$(document).ready(function() { 
    $(".wrap_tabs").load("/Publication/GetPublicationTab?mainPage=" + false + "&isEvent=" + true, 
    function(){ 
    var tab = "@Model.ActiveTab"; 

    if (tab === "#scheduleLink") { 
     $("#scheduleLink").trigger('click'); 
     alert("true"); 
    } 
    else { 
     alert("false"); 
     loadPublicationList(-1, 1); 
    }  
}); 

}); 
+0

私はそれを解決しました。とにかく、大きな感謝。 – user348173

関連する問題