我創建一個文本,並根據一定的條件對一個循環按鈕的兄弟姐妹值點擊發布按鈕。掌握的JavaScript
我想這一點,但它只是給我的第一個文本區域和按鈕的創建文本:
function post_pm_comment(thidid, pm_id, path, pm,getter)
{
var pm_text = document.getElementById("pm_text").value;
}
我該怎麼辦? 謝謝
我創建一個文本,並根據一定的條件對一個循環按鈕的兄弟姐妹值點擊發布按鈕。掌握的JavaScript
我想這一點,但它只是給我的第一個文本區域和按鈕的創建文本:
function post_pm_comment(thidid, pm_id, path, pm,getter)
{
var pm_text = document.getElementById("pm_text").value;
}
我該怎麼辦? 謝謝
您的代碼輸出一個無效的DOM結構,因爲id
值必須在頁面上獨一無二的。您不能在多個元素上使用相同的id
。完全刪除id
值,你不需要它們。
已經這樣做了,最小的,變化的回答是通過this
到您的處理程序:
onClick="post_pm_comment(this)"
...然後在您的處理程序,執行導航:
function post_pm_comment(postButton)
{
var pm_text;
var textarea = postButton.previousSibling;
while (textarea && textarea.nodeName.toUpperCase() !== "TEXTAREA") {
textarea = textarea.previousSibling;
}
if (textarea) {
pm_text = textarea.value; // Or you may want .innerHTML instead
// Do something with it
}
}
非常感謝您的回覆,但是當我提醒(pm_text)時,沒有任何反應。 我沒有得到我在textarea裏輸入的文字 – beckinho
克羅德的答案絕對是這樣做的。但看起來你還需要一些其他參數,比如你的post_pm_comment函數。那些在那裏做什麼的爭論,你在哪裏得到這些?看起來這個代碼片段不完整。可能是你應該首先發布實際的代碼來獲得更好的答案。 –
@beckinho:這個答案的早期版本中有一個錯別字,可能會解釋這個錯誤。 (我有'var textarea = postButton.prevSibling;'我應該有'var textarea = postButton.previousSibling;'''''''''''我修正了錯誤,剛剛添加了一個實例。 –
那麼,您應該向我們展示您的HTML,首先...([tag:php]與JavaScript無關,瀏覽器認爲這很重要,'查看源代碼')。 –
我確實向你展示了html是如何創建的。它只是一個textarea和一個觸發onclick函數的按鈕。 – beckinho
Crowder的答案絕對是這樣做的。但看起來你還需要一些其他參數,比如你的post_pm_comment函數。那些在那裏做什麼的爭論,你在哪裏得到這些?看起來這個代碼片段不完整。可能是你應該首先發布實際的代碼來獲得更好的答案。 –