2012-06-01 84 views
0

我試圖顯示在index1.cshtml ASP-mvc4jquery的.load問題

另一視圖內的某些視圖的元件:

<div id="divToUpdate"></div> 
在index2.cshtml

<div id="sss"><table id="grid1"></table></div> 
<div id="fff">Hello!</div> 

在我的JavaScript文件:

$('#ThisIsALink').click(function() { 
    $('#divToUpdate').load('../Employee/Index #fff'); 
}); 

此腳本將顯示「你好!」在index1.cshtml中的div ...但如果我寫'../Employee/Index #sss',而不是我的表(實際上是一個jqgrid)沒有顯示。這是爲什麼?

回答

0

原因是你的表是由javascript創建的。

當使用URL不具有後綴選擇 表達調用.load()時,內容被傳遞到.HTML()腳本是 去除之前進行。這會在腳本塊被丟棄之前執行。如果使用附加到URL的選擇器表達式調用 .load(),則 但是,在更新DOM之前刪除腳本 ,因此不會執行。

用於您的表jqgrid的JavaScript將不會執行,因此您的jqgrid將不會顯示。

+0

好的,這裏的解決方案是把jqgrid放在click的功能:) –