Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
动态单击复选框,在列表中添加电子邮件地址,并使用javascript删除重复的电子邮件地址_Javascript_Jquery_Jsp_Checkbox_Jsp Tags - Fatal编程技术网

动态单击复选框,在列表中添加电子邮件地址,并使用javascript删除重复的电子邮件地址

动态单击复选框,在列表中添加电子邮件地址,并使用javascript删除重复的电子邮件地址,javascript,jquery,jsp,checkbox,jsp-tags,Javascript,Jquery,Jsp,Checkbox,Jsp Tags,文件名:contact.jsp ${contactList}有多个联系人 若复选框被选中,那个么它将被添加到emailList类中,若复选框被取消选中,那个么电子邮件地址将从列表中删除 从列表中删除重复的电子邮件地址 例如:kumar@gmail.com , sam@yahoo.com-在电子邮件地址中间加逗号 最后,将所有电子邮件地址分配给父页面id$(“#toAddress”) ${contact.accountNo} ${contact.firstName}${contact.lastN

文件名:contact.jsp

${contactList}
有多个联系人

  • 若复选框被选中,那个么它将被添加到emailList类中,若复选框被取消选中,那个么电子邮件地址将从列表中删除
  • 从列表中删除重复的电子邮件地址
  • 例如:kumar@gmail.com , sam@yahoo.com-在电子邮件地址中间加逗号
  • 最后,将所有电子邮件地址分配给父页面id
    $(“#toAddress”)
    
    ${contact.accountNo}
    ${contact.firstName}${contact.lastName}
    ${contact.position}
    ${contact.email}
    ${contact.phone}
    ${contact.fax}
    
    文件名:contact.js

    function addEmailinList(ele) {
        var mailList = [];
        $(".emailList:checked").each(function () {
            alert(ele);            //  here i got email address.
            mailList.push(ele);
        });
        parent.$("#toAddress").val($(".emailList").val());
    }
    

    要将所有选中的电子邮件填充到
    $(“#toAddress”)
    ,您可以执行以下操作:

  • 删除
    onclick=“addEmailinList(${contact.email});”
    并添加
    数据电子邮件=“${contact.email}”
    以引用所有复选框输入字段上的
    电子邮件
  • 在所有
    $('input.emailList')
  • 查看文件:

    <c:forEach items="${contactList}" var="contact">
        <cong:td>
            <input type="checkbox" name="selectContact" id="selectContact" class="emailList" data-email="${contact.email}">
        </cong:td>
        <cong:td>${contact.accountNo}</cong:td>
        <cong:td>${contact.firstName}&nbsp;&nbsp;${contact.lastName}</cong:td>
        <cong:td>${contact.position}</cong:td>
        <cong:td>${contact.email}</cong:td>
        <cong:td>${contact.phone}</cong:td>
        <cong:td>${contact.fax}</cong:td>
    </c:forEach>
    
    <cong:td>
        <input type="button" value="Submit" class="button-style1" style="width:50px;" onclick="definepls()" />
    </cong:td>
    

    我忘了指定提交按钮。单击提交按钮时,所有选中的电子邮件地址将填充父页面id$(“#toAddress”)。是。一旦他们提交,它将携带所有检查过的电子邮件地址到父页面id$(“#toAddress”)。很好的帮助。。如果有效,请将其标记为正确答案
    $('input.emailList').on('change', function () {
        var $this = $(this),
            $toAddress = $('#toAddress'),
            email = $this.data('email'),
            mailList = ($toAddress.text() !== '') ? $toAddress.text().split(', ') : [];
    
        if ($this.is(':checked')) {
            // Add email to the list
            mailList.push(email);
        } else {
            // Remove email from the list
            for (var i = mailList.length - 1; i >= 0; i--) {
                if (mailList[i] === email) {
                    mailList.splice(i, 1);
                    break;
                }
            }
        }
    
        // Populate #toAddress 
        $toAddress.html(mailList.join(', '));
    });