Javascript - If / Else If result

时间:2016-07-03 14:49:27

标签: javascript radio-group

我有这些块:

function generateEmail(){
if 
(document.getElementById('emailOpt1').checked = "true") {
document.getElementById('generatedEmail').innerHTML = emailOpt1.value
}
else if
(document.getElementById('emailOpt2').checked = "true") {
document.getElementById('generatedEmail').innerHTML = emailOpt2.value
}
else if
(document.getElementById('emailOpt3').checked = "true") {
document.getElementById('generatedEmail').innerHTML = emailOpt3.value
}
else if
(document.getElementById('emailOpt4').checked = "true") {
document.getElementById('generatedEmail').innerHTML = emailOpt4.value
}
} 

和此:

<div class="radioEmailType" id="emailClass">  
<input type="radio" id="emailOpt1" name=emailType value="email_c1">
 <label for="emailOpt1">class-one</label>
<input type="radio" id="emailOpt2" name=emailType value="email_c2">
 <label for="emailOpt2">class-two</label>
<input type="radio" id="emailOpt3" name=emailType value="email_c3">
 <label for="emailOpt3">class-three</label>
<input type="radio" id="emailOpt4" name=emailType value="email_c4">
 <label for="emailOpt4">class-four</label>
</div>
<button type="button" class="gButton" onclick=generateEmail()">GENERATE EMAIL</button>
<textarea id=generatedEmail></textarea></td></tr>

当我点击“生成电子邮件”时选择其中一个&#39;无线电按钮后,代码似乎将选择恢复为第一个选项,因为我继续在textarea上获得第一个选项。

任何想法和可能更简单的方法都将受到赞赏。

注意:我必须走这条路,因为用户希望收音机成为按钮。

1 个答案:

答案 0 :(得分:0)

我解决了这个问题:

更改:

.checked = "true"

到:

.checked == true

最终代码:

<html>
    <head>
    </head>
    <body>
     <div class="radioEmailType" id="emailClass">  
    <input type="radio" id="emailOpt1" name=emailType value="email_c1">
     <label for="emailOpt1">class-one</label>
    <input type="radio" id="emailOpt2" name=emailType value="email_c2">
     <label for="emailOpt2">class-two</label>
    <input type="radio" id="emailOpt3" name=emailType value="email_c3">
     <label for="emailOpt3">class-three</label>
    <input type="radio" id="emailOpt4" name=emailType value="email_c4">
     <label for="emailOpt4">class-four</label>
    </div>
    <button type="button" class="gButton" onclick="generateEmail()">GENERATE EMAIL</button>
    <textarea id=generatedEmail></textarea>
    <script>
        function generateEmail(){
            if (document.getElementById('emailOpt1').checked == true) {
            document.getElementById('generatedEmail').innerHTML = emailOpt1.value
            }
            else if (document.getElementById('emailOpt2').checked == true) {
            document.getElementById('generatedEmail').innerHTML = emailOpt2.value
            }
            else if (document.getElementById('emailOpt3').checked == true) {
            document.getElementById('generatedEmail').innerHTML = emailOpt3.value
            }
            else if (document.getElementById('emailOpt4').checked == true) {
            document.getElementById('generatedEmail').innerHTML = emailOpt4.value
            }
        }
    </script>
    </body>
</html>