如何检查动态生成的无线电输入值

时间:2017-08-08 18:27:35

标签: javascript jquery html

我必须动态生成多个输入字段,以便每次用户点击"添加"按钮,我成功地得到了它们。每个联系人都应该使用不同名称的此无线电输入字段,以便我以数组形式创建名称。

这是我到目前为止所做的事情,我想知道我应该如何获得每个人的无线电价值:

var options = '';
var count = 0;
var maxfields = 4;

$('button#add').click(function() {
  options = '<p>Visit Type:
 <label class="radio-inline">
 <input  type="radio" class="c_visittype' + count +'" name="c_visittype[]" value="Student" required>Student</label>
<label class="radio-inline">
<input type="radio" class="c_visittype' + count +'" name="c_visittype[]" value="Visitor" required>Visitor</label> </p>';   


   if(count < maxfields){
        count++;     
    $(options).fadeIn("slow").appendTo('.companion');

    return false;
  }
}); 

 $('.c_visittype' + count).on('click', function(){
    $('input:radio[name="c_visittype"]').attr('checked', 'checked');
  });

每个人都应该选择“学生”和“学生”。或者访客&#39;每当创建更多人员字段时,我必须为多人获取此值。我将字段名称作为数组放置的原因是在下一页中通过php迭代它。

4 个答案:

答案 0 :(得分:1)

<script src="http://code.jquery.com/jquery-2.2.4.min.js"          integrity="sha256-BbhdlvQf/xTY9gja0Dq3HiwQF8LaCRTXxZKRutelT44="               crossorigin="anonymous"></script>
<script>
    $( document ).ready(function() {
        var options = '';
        var count = 0;
        var maxfields = 4;

        $('button#add').click(function() {
            var options = '<p style="display: none">Visit Type:<label class="radio-inline"> <input  type="radio" class="c_visittype' + count +'" name="c_visittype' + count +'[]" value="Student" required>Student</label> <label class="radio-inline"><input type="radio" class="c_visittype' + count +'" name="c_visittype' + count +'[]" value="Visitor" required>Visitor</label> </p>';   

            if(count < maxfields){
                count++;     
                $('.companion').append(options);
                $(".companion p:last").fadeIn();
            }
        }); 
    });
</script>

<button id="add">add</button>
<div class="companion">

</div>

答案 1 :(得分:0)

$('input[name=c_visittype[]]:checked').val();

这就是你用jQuery访问已检查单选按钮的值的方法。

答案 2 :(得分:0)

使用静态父元素进行检查,例如:

$('static-parent-element').on('click','dynamic-child',function(){
    .... CODE
});

答案 3 :(得分:0)

postfix/smtpd[2158]: connect from a3-182.smtp-out.eu-west-1.amazonses.com[54.240.3.182]
postfix/smtpd[2158]: 6B7E44385A: client=a3-182.smtp-out.eu-west-1.amazonses.com[54.240.3.182]
postfix/cleanup[2164]: 6B7E44385A: message-id=<someid@eu-west-1.amazonses.com>
postfix/qmgr[565]: 6B7E44385A: from=<>, size=2305, nrcpt=1 (queue active)
postfix/cleanup[2164]: 6D93E43922: message-id=<someid@eu-west-1.amazonses.com>
postfix/qmgr[565]: 6D93E43922: from=<>, size=2432, nrcpt=1 (queue active)
postfix/local[2167]: 6B7E44385A: to=<postmaster@domain.com>, relay=local, delay=0.01, delays=0.01/0/0/0, dsn=2.0.0, status=sent (forwarded as 6D93E43922)
postfix/qmgr[565]: 6B7E44385A: removed
postfix/smtp[2166]: 6D93E43922: to=<someemail@gmail.com>, orig_to=<postmaster@domain.com>, relay=email-smtp.eu-west-1.amazonaws.com[52.213.60.48]:25, delay=0.09, delays=0/0/0.09/0, dsn=5.0.0, status=bounced (host email-smtp.eu-west-1.amazonaws.com[52.213.60.48] said: 501 Invalid MAIL FROM address provided (in reply to MAIL FROM command))
postfix/qmgr[565]: 6D93E43922: removed

有关更改的更新:

var inputValues = [];
$('.c_visittype:checked').each(function() {
    inputValues.push($(this).val());
});
// Your code using inputValues

确保将编号从class属性移动到name属性(就像它一样,所有内容都是同一组选项的一部分)。另外,将整个字符串放在一行。