Javascript 如何使用输入收音机显示输入文本?
你好,我试图用无线电输入显示输入,不幸的是,我不明白为什么它不工作。。使用此代码,当我单击“否”时,它会显示正确的输入,但当我单击“是”时,不会显示任何内容。 我不明白为什么谢谢你Javascript 如何使用输入收音机显示输入文本?,javascript,html,ruby-on-rails,input,Javascript,Html,Ruby On Rails,Input,你好,我试图用无线电输入显示输入,不幸的是,我不明白为什么它不工作。。使用此代码,当我单击“否”时,它会显示正确的输入,但当我单击“是”时,不会显示任何内容。 我不明白为什么谢谢你 <div class="login_content_form"> <%= f.label :post_author_yes, 'Yes' %> <%= f.radio_button :author, 'Yes', class: 'edit_
<div class="login_content_form">
<%= f.label :post_author_yes, 'Yes' %>
<%= f.radio_button :author, 'Yes', class: 'edit_input', onclick:'javascript:yesnoCheck();' %>
<%= f.label :post_author_no, 'No' %>
<%= f.radio_button :author, 'No', class: 'edit_input', onclick:'javascript:yesnoCheck();' %>
<div id="ifYes" style="display:none">
<%= f.text_field :author, class: 'edit_input', placeholder: 'Real Author' %>
</div>
<div id="ifNo" style="display:none">
<%= f.text_field :author, class: 'edit_input', value: 'Unknown', :readonly => true %>
</div>
</div>
正确%>
还有剧本:
<script type="text/javascript">
function yesnoCheck() {
if (document.getElementById('post_author_yes').checked) {
document.getElementById('ifYes').style.display = 'block';
}
else
document.getElementById('ifNo').style.display = 'block'
document.getElementById('ifYes').style.display = 'none';
}
</script>
函数yesnoCheck(){
if(document.getElementById('post_author_yes')。选中){
document.getElementById('ifies').style.display='block';
}
其他的
document.getElementById('ifNo').style.display='block'
document.getElementById('ifies').style.display='none';
}
Html版本:
<div class="login_content_form">
<label for="post_post_author_yes">Yes</label>
<input class="edit_input" onclick="javascript:yesnoCheck();" type="radio" value="Yes" name="post[author]" id="post_author_yes" />
<label for="post_post_author_no">No</label>
<input class="edit_input" onclick="javascript:yesnoCheck();" type="radio" value="No" name="post[author]" id="post_author_no" />
<div id="ifYes" style="display:none">
<input class="edit_input" placeholder="Real Author" type="text" name="post[author]" id="post_author" />
</div>
<div id="ifNo" style="display:none">
<input class="edit_input" value="Unknown" readonly="readonly" type="text" name="post[author]" id="post_author" />
</div>
</div>
对
不
谢谢你的帮助 您的else语句没有大括号。因此,关闭“是”块显示的最后一条语句将始终执行。更正此错误:
function yesnoCheck(){
if(document.getElementById('post_author_yes').checked)
{
document.getElementById('ifYes').style.display = 'block';
}
else
{
document.getElementById('ifNo').style.display = 'block'
document.getElementById('ifYes').style.display = 'none';
}
}
确保在if/else周围使用花括号。不要忽略它们