亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

要求使用Javascript選擇單選按鈕

要求使用Javascript選擇單選按鈕

LEATH 2021-05-19 13:02:03
我是JS的初學者,嘗試創建一個帶有兩個選項(左/右)的單選按鈕,其中需要選擇兩個選項之一才能使程序繼續運行,否則它將顯示錯誤屏幕。我有一些代碼可以阻止參與者繼續按下它們(無論出現什么錯誤都將繼續執行),或者使參與者不管什么都繼續執行的代碼(即即使他們沒有繼續執行該程序也可以繼續執行)選擇一個選項。)我覺得這可能與我的邏輯運算符有關,但我不確定。我嘗試使用手動XOR,但這似乎不是問題。我使用的是經過修改的代碼,因此,請告知我是否可以/還應該包括其他內容!<div class="radio"><label><input id="option1"  name="option1" type="radio" value="Right"  />Right</label></div><div class="radio"><label><input id="option1" name="option1" type="radio" value = "Left" />Left</label></div>無論什么原因,都會導致錯誤的代碼:<input onclick="function filledOut(id) { return (document.getElementById(id).value == 'Left')} if(filledOut('option1') ) { next(); }else{ alert('Please provide a response.'); }" type="button" value="Continue" /> </div></div>導致程序繼續運行的代碼:<input onclick="function filledOut(id) { return ((document.getElementById(id).value == 'Left')|| (document.getElementById(id).value == 'Right'))} if(filledOut('option1') ) { next(); } else{ alert('Please provide a response.'); }" type="button" value="Continue" /> </div></div>
查看完整描述

3 回答

?
侃侃無極

TA貢獻2051條經驗 獲得超10個贊

<form name="formName">

    <input type="radio" name="option1" id="option1" value="Right"/>Right

    <input type="radio" name="option2" id="option2" value="Left"/>Left

</form>



<input onclick="checkResponse()" type="button" value="Continue" />

當用戶單擊繼續按鈕時,checkResponse函數將檢查是否選擇了任何選項。


<script type="text/javascript">

    function checkResponse(){

        if (isChecked('option1') || isChecked('option2')){

            next();

        }else{

            alert("Your error message")

        }

    }


    function isChecked(id){


     return document.getElementById(id).checked; //returns true if any options are selected


    }


</script>


查看完整回答
反對 回復 2021-05-27
?
米脂

TA貢獻1836條經驗 獲得超3個贊

我了解的是,如果未檢查任何內容,則需要顯示一個錯誤;如果檢查其中之一,則需要繼續。


為此,您將需要檢查是否選中了其中一個而不檢查其值,并為每個單選按鈕賦予唯一的ID。你可以做類似的事情


function isChecked(id){//Instead of filledOut

  return document.getElementById(id).checked;

 //.checked returns true or false

}

if (isChecked('option1') || isChecked('option2')){

 next();

}else{

 alert("Your error message")

}


如果需要,可以使用另一個函數來獲取值:


function getCheckedBtnValue(){

  if(isChecked('option1')) return document.getElementById('option1').value

  if(isChecked('option2')) return document.getElementById('option2').value

  return null

}

//You can also use this function to check if any of them is checked

const value = getCheckedBtnValue();

if(value){

 next();

}else{

 alert("Your error message");

}

另外,請盡量不要在經常難以閱讀的HTML元素內編寫JavaScript。繼續使用JavaScript。


查看完整回答
反對 回復 2021-05-27
  • 3 回答
  • 0 關注
  • 153 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號