[英]How to show multiple input values in different text fields using javascript
I have multiple input fields as radio buttons where the user can select a button and then the radio buttons disappear and the selected value will be shown in a new div 我有多个输入字段作为单选按钮,用户可以在其中选择一个按钮,然后单选按钮消失,所选值将显示在新的div中
I am successfully getting single value if selected and able to show,But how to get input from multiple forms and show it individually in separate div 如果选择并可以显示,我将成功获取单个值,但是如何从多种形式获取输入并分别在单独的div中显示
<div class="chat machine">
<p class="chat-message" id="course-picker">
Which course do you want to choose?
<form method="post">
<!--Radio Buttons for getting course input -->
<label class="container">
<input type="radio" name="co1"value="course 1">
<span class="checkmark">Course 1</span>
</label>
<label class="container">
<input type="radio" name="co2"value="course 2">
<span class="checkmark">Course 2</span>
</label>
<label class="container">
<input type="radio" name="co3"value="course 3">
<span class="checkmark">Course 3</span>
</label>
<label class="container">
<input type="radio" name="co4"value="course 4">
<span class="checkmark">Course 4</span>
</label>
</form>
</p>
</div>
<div class="chat self" id="self-chat">
<p class="chat-message"><span id="result"></span></p>
</div>
<script>
jQuery(':radio').click(function () {
$("#result").text(this.value);
$("#course-picker").hide();
});
</script>
<div class="chat machine">
<p class="chat-message" id="preference">
Which course do you want to choose?
<form method="post">
<!--Radio Buttons for getting course input -->
<label class="container">
<input type="radio" name="p1"value="prefer 1">
<span class="checkmark">prefer 1</span>
</label>
<label class="container">
<input type="radio" name="p2"value="prefer 2">
<span class="checkmark">prefer 2</span>
</label>
</form>
</p>
</div>
<div class="chat self" id="self-chat">
<p class="chat-message"><span id="result1"></span></p>
</div>
<script>
jQuery(':radio').click(function () {
$("#result1").text(this.value);
$("#preference").hide();
});
</script>
I thought about why we need multiple forms. 我考虑过为什么我们需要多种形式。 https://codepen.io/kaslab/pen/vwGZWm
https://codepen.io/kaslab/pen/vwGZWm
I have added multiple P tags with class, question add radio naming 我在课程中添加了多个P标签 ,问题添加了广播名称
HTML : HTML:
<div class="chat machine">
<div class="user-photo">
<img src="img/user.png" />
</div>
<form method="post" id="course-picker">
<p class="chat-message questionControl">Which course do you want to choose?
<!--Radio Buttons for getting course input --><br />
<label class="container">
<input type="radio" name="course1" value="course 1" />
<span class="checkmark">Course 1</span>
</label>
<label class="container">
<input type="radio" name="course1" value="course 2" />
<span class="checkmark">Course 2</span>
</label>
<label class="container">
<input type="radio" name="course1" value="course 3" />
<span class="checkmark">Course 3</span>
</label>
<label class="container">
<input type="radio" name="course1" value="course 4" />
<span class="checkmark">Course 4</span>
</label>
</p>
<p class="chat-message questionControl">Which subject do you want to choose?
<!--Radio Buttons for getting subject input --><br />
<label class="container">
<input type="radio" name="subject1" value="subject 1" />
<span class="checkmark">Subject 1</span>
</label>
<label class="container">
<input type="radio" name="subject1" value="subject 2" />
<span class="checkmark">Subject 2</span>
</label>
<label class="container">
<input type="radio" name="subject1" value="subject 3" />
<span class="checkmark">Subject 3</span>
</label>
<label class="container">
<input type="radio" name="subject1" value="subject 4" />
<span class="checkmark">Subject 4</span>
</label>
</p>
<button type="button" class="getResult">Result</button>
</form>
</div>
<div class="chat self" id="self-chat">
<div class="user-photo">
<img src="img/self.png">
</div>
<p class="chat-message">
<span id="result"></span>
</p>
</div>
</div>
SCRIPT : 脚本:
var $radio = $("input:radio");
var $result = $(".getResult");
$result.on('change, click', function(){
getSelectedRadioValue();
hideRadio();
});
function getSelectedRadioValue(){
var $result = [];
$(".questionControl").each(function() {
var $ans = $(this).find('input:radio:checked').val();
$result.push($ans);
});
$('.chat-message #result').html($result.join(', '));
}
function hideRadio(){
$('input:radio').hide();
// if you wanted to disable
// $('input:radio').attr('disabled', true);
}
Please follow the link to preview. 请点击链接进行预览。
by doing: 通过做:
jQuery(':radio').click(function () {
$("#result").text(this.value);
$("#course-picker").hide();
});
then: 然后:
jQuery(':radio').click(function () {
$("#result1").text(this.value);
$("#preference").hide();
});
You were attaching 2 click event handlers to all radio buttons regardless of their form. 您将2 click事件处理程序附加到所有单选按钮,而不管它们的形式如何。
I've just reworked the markup, added a different id ( course-picker-form
and preference-form
) to each form and changed the selectors ( '#course-picker-form input[type="radio"]'
and '#preference-form input[type="radio"]'
) to attach the 2 separate click handlers to their intended radio buttons groups: 我刚刚修改了标记,在每个表单中添加了一个不同的ID(
course-picker-form
和preference-form
),并更改了选择器( '#course-picker-form input[type="radio"]'
和'#preference-form input[type="radio"]'
)将2个单独的点击处理程序附加到其预期的单选按钮组:
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <div class="chat machine" id="course-picker"> <p class="chat-message"> Which course do you want to choose? </p> <form method="post" id="course-picker-form"> <!--Radio Buttons for getting course input --> <label class="container"> <input type="radio" name="co1"value="course 1" /> <span class="checkmark">Course 1</span> </label> <label class="container"> <input type="radio" name="co2"value="course 2" /> <span class="checkmark">Course 2</span> </label> <label class="container"> <input type="radio" name="co3"value="course 3" /> <span class="checkmark">Course 3</span> </label> <label class="container"> <input type="radio" name="co4"value="course 4" /> <span class="checkmark">Course 4</span> </label> </form> </div> <div class="chat self" id="self-chat"> <p class="chat-message"><span id="result"></span></p> </div> <script> jQuery('#course-picker-form input[type="radio"]').click(function () { $("#result").text(this.value); $("#course-picker").hide(); }); </script> <div class="chat machine" id="preference"> <p class="chat-message"> Which course do you want to choose? </p> <form method="post" id="preference-form"> <!--Radio Buttons for getting course input --> <label class="container"> <input type="radio" name="p1"value="prefer 1"> <span class="checkmark">prefer 1</span> </label> <label class="container"> <input type="radio" name="p2"value="prefer 2"> <span class="checkmark">prefer 2</span> </label> </form> </div> <div class="chat self" id="self-chat"> <p class="chat-message"><span id="result1"></span></p> </div> <script> jQuery('#preference-form input[type="radio"]').click(function () { $("#result1").text(this.value); $("#preference").hide(); }); </script>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.