我有一組單選按鈕,帶有隱藏/顯示網站區域的onclick事件。 onclick還啓用/禁用Spry驗證。加載頁面時觸發onclick
onclick工作得很好!但是,不確定如何在頁面加載時觸發onclick,並且單選按鈕被標記爲單擊。
例如,用戶可以選擇主頁上的單選按鈕。然後在表單處理過程中,用戶可能想要編輯他們輸入的輸入。然後,我會檢查用戶在主頁面上選擇的單選按鈕。由於用戶沒有點擊單選按鈕,隱藏區域仍然隱藏。
我有一組單選按鈕,帶有隱藏/顯示網站區域的onclick事件。 onclick還啓用/禁用Spry驗證。加載頁面時觸發onclick
onclick工作得很好!但是,不確定如何在頁面加載時觸發onclick,並且單選按鈕被標記爲單擊。
例如,用戶可以選擇主頁上的單選按鈕。然後在表單處理過程中,用戶可能想要編輯他們輸入的輸入。然後,我會檢查用戶在主頁面上選擇的單選按鈕。由於用戶沒有點擊單選按鈕,隱藏區域仍然隱藏。
window.onready=function()
{
if(document.getElementById('yourRadioButtonId').checked) {
//call your function, that you want to be triggered, as you will have the same call back function bounded for your onclick event
}
或
window.onready=function()
{
var radioButton=document.getElementById('yourRadioButtonId');
if(radioButton.checked) {
radioButton.click();
}
}
注:並非不是所有的瀏覽器都允許這樣模擬事件。請參閱觸發器方法的jQuery源代碼,以瞭解所有瀏覽器怪癖是如何處理的。
處理此問題的最佳方法是編寫一個輔助函數。稍後,可以通過onClick(單選按鈕)和onLoad(正文元素)事件來調用此輔助函數。這個函數會得到你的單選按鈕的值,並根據結果來做這些事情。
例如:
function handleRadioButtonStateAction() {
var radioButtons = document.getElementsByName('theRadioButtonName');
for (var x = 0; x < radioButtons.length; x ++) {
if (x == yourDesiredButton && radioButtons[x].checked) {
//do action
}
}
}
感謝您的答案。仍然在這方面掙扎。提供的解決方案,還發送選中的單選按鈕的值。我的通話功能取決於工作的價值。 – user1493262
正如我在回答中告訴你的,你的事件處理程序(就像我編寫實現的處理程序)不應該依賴於獲取單選按鈕的值作爲參數。您可以輕鬆地提取方法中單選按鈕的值(如果處理一組單選按鈕,則調用document.getElementsByName;如果您有單個單選按鈕,則調用document.getElementById)。這樣,您可以對onClick(單選按鈕)和onLoad(正文元素)事件都使用處理程序實現。 –
請標記爲答案,如果它對您有幫助! –