我在這裏變得非常沮喪。使用jQuery更改動態創建的div內容
我有一個記錄表。每個記錄旁邊都會有一個按鈕。在點擊該記錄旁邊的按鈕時,應該執行jQuery AJAX調用。
<script language="JavaScript" type="text/javascript">
<!--
function swapContent(cv) {
$("#myDiv").html('<div align="center"><img src="images/loader.gif"/></div>').show();
var url = "process.php";
$.post(url, {contentVar: cv} ,function(data) {
$("#myDiv").html(data).show();
});
}
//-->
</script>
相關的HTML:
<div id="myDiv" align="center"><a href="#" onClick="return false" onmousedown="javascript:swapContent('do_stuff');"><img src='images/icon.png' border='0'></a></div>
當我點擊HTML鏈接時,格「myDiv」的內容被改變出於對Ajax調用的輸出process.php。這一切都很好,但我會有幾十個這樣的div,我需要能夠不僅使用參數cv調用swapContent函數,還要傳入一個參數,以便div更改其內容。
我相信我的錯誤只是基於對JS語法的無知。舉例來說,我已經做到了這一點:
<script language="JavaScript" type="text/javascript">
<!--
function swapContent(thediv,cv) {
$(thediv).html('<div align="center"><img src="images/loader.gif"/></div>').show();
var url = "process.php";
$.post(url, {contentVar: cv} ,function(data) {
$(thediv).html(data).show();
});
}
//-->
</script>
,但我不知道這是再處理變量thediv作爲一個字符串時,它應該是一個對象或可能是什麼問題。
我將不勝感激您的任何幫助!
<div id="div1" align="center"><a href="#" onClick="return false" onmousedown="javascript:swapContent('div1','do_stuff');"><img src='images/icon.png' border='0'></a></div>
...
<div id="div2" align="center"><a href="#" onClick="return false" onmousedown="javascript:swapContent('div2','do_stuff');"><img src='images/icon.png' border='0'></a></div>
「arrrrrrrrrrgh」難道你不討厭它,當它是一個愚蠢的語法錯誤嗎?調試這個過程非常艱難。我剛剛使用Firefox Webdeveloper工具欄的錯誤控制檯。有沒有更好的辦法?例如,我沒有被給予「div未找到」的錯誤,或者有人指出我正確的方向。無論如何,謝謝! –
@Bruce - jQuery的工作方式,'$(someselector)'函數將返回一個包含匹配'someselector'的_zero或more_元素的jQuery對象,所以沒有真正適用的「未找到div」的概念。錯誤。 (雖然你可以測試多少個元素匹配,因爲生成的對象具有'.length'屬性。) – nnnnnn
@Bruce,在FF中安裝FireBug插件,然後安裝FireQuery插件。這是調試jQuery代碼的更好方法。我不能說特定的這種情況,但它絕對是更好的工具。 – Imdad