我是JavaScript新手。我正在做一個反饋表單,其中有12個單選按鈕需要單獨驗證,並且當我單擊特定值時將顯示textarea。在這裏,當我點擊那個按鈕時,我的textarea正在顯示,應該被強制輸入(例如:當我在結果問題中單擊失敗選項時,我應該提及他在哪個主題中通過該textarea失敗。類似的東西)。爲此,我編寫了代碼,它在第一個單選按鈕上工作正常,但無法爲其餘按鈕遞歸調用此代碼。調用具有不同變量的遞歸函數
我需要遞歸地調用函數中的這段代碼,但是我的變量需要每次都改變。像第二次,我應該使用選項2,文本2,同樣在下次呼叫選項3,文字3等
var option = $("#form1 input[@name=radio1]:checked").val();
var text = document.getElementById("text1").value;
if (!$("#form1 input[@name=radio1]:checked").val()) {
alert("Please fill all the fields");
return false;
errs++;
} else if (option == "3" && trim(text) == "") {
alert("Please enter comments.");
return false;
}
需要被調用VAR選項1至option10和同一文本1至text10這段代碼。像:
var option2 = $("#form1 input[@name=radio2]:checked").val();
var text2 = document.getElementById("text2").value;
這應該被立即調用完成第一個單選按鈕。
請幫我一把。
表現出一定的HTML代碼了。 – Yoshi 2012-07-12 14:56:52
你確定你需要遞歸嗎?這看起來更像是一個相同級別的迭代任務。在單選按鈕元素上使用.each(),並使用.index()引用其在同胞中的位置。或者您可以使用遞歸併使用.next()來獲取DOM中的下一個兄弟。 – Onheiron 2012-07-12 15:01:05
*在調用'return false;'之後,您不能調用errs ++'*。 – 2012-07-12 15:02:01