惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

S
Schneier on Security
The Register - Security
The Register - Security
月光博客
月光博客
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
The GitHub Blog
The GitHub Blog
博客园 - 司徒正美
罗磊的独立博客
U
Unit 42
S
SegmentFault 最新的问题
Y
Y Combinator Blog
博客园_首页
Hugging Face - Blog
Hugging Face - Blog
J
Java Code Geeks
Schneier on Security
Schneier on Security
Know Your Adversary
Know Your Adversary
C
Check Point Blog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
Simon Willison's Weblog
Simon Willison's Weblog
V
Vulnerabilities – Threatpost
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
阮一峰的网络日志
阮一峰的网络日志
The Hacker News
The Hacker News
博客园 - 叶小钗
C
Cybersecurity and Infrastructure Security Agency CISA
Spread Privacy
Spread Privacy
L
LINUX DO - 热门话题
T
The Exploit Database - CXSecurity.com
P
Palo Alto Networks Blog
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
Latest news
Latest news
L
Lohrmann on Cybersecurity
A
About on SuperTechFans
L
LangChain Blog
Stack Overflow Blog
Stack Overflow Blog
S
Securelist
A
Arctic Wolf
D
Darknet – Hacking Tools, Hacker News & Cyber Security
T
Threatpost
Scott Helme
Scott Helme
博客园 - 聂微东
博客园 - 【当耐特】
T
Tenable Blog
I
Intezer
D
DataBreaches.Net
B
Blog RSS Feed
Security Latest
Security Latest
C
Cisco Blogs
T
Tor Project blog
N
Netflix TechBlog - Medium

jQuery

油猴脚本能拦截$(document).ready 吗? - V2EX jquery 有什么树形可编辑表格的插件吗? - V2EX Jquery Datatable 前端分页 Checkbox 跨页全选的问题 - V2EX 想提取 jQuery 中的一些函数单独使用,有什么好方法吗 - V2EX 有没有小的简单的 jquery 路由 - V2EX 关于 JQuery.load(html)加载 html,导致父 html 的$.fn 以及$.unbind 失效的问题 - V2EX <script id="aaa" src="xxx.com/foo.js"></script> 用 $.getScript(...) 可以把 id="aaa" 一起设置进去吗? - V2EX 为什么我的 select 的 change 事件会失效? - V2EX 初学者在做做登陆界面使用 jQuery ajax()方法时直接出现 error, XMLHttpRequest.status=0,XMLHttpRequest.readyState=0,textStatus=error - V2EX 请教一个 jquery contextmenu 问题,不同事件源怎么合到一个菜单里 - V2EX jQuery.extend 在深复制时,为什么需要判断 isPlainOjbect?(不是问 isPlainOjbect 方法的原理) - V2EX jquery 通过 ajax 返回新的 url 给前端重定向算前后端分离吗? - V2EX 前端 websocket 实时接收到音频流数据,如何在 web 端实时播放 - V2EX scrollTop()引发的一个操作问题 - V2EX jQuery 选择特定尺寸图片问题 - V2EX 如何在提交表单后获取到动态添加的 inpu 的值 - V2EX pdfObject 怎么监听进度 - V2EX 能帮我找找这个页面的细节 和 尺寸是那个 ajax 和 url 加载的吗? - V2EX 问个 Jquery 的选择元素的问题 - V2EX jQuery UI dialog 有熟悉的么,我想问个问题 - V2EX 实现滚动条离顶端一定距离之后异步加载广告 - V2EX 求指点 Refused to set unsafe header "cookie" - V2EX 问个 JQ 的选择节点的问题 - V2EX jquery 如何实现点击 p( class=‘aa’,没有 id)而选中 p 里面的文字? - V2EX 可以用 jquery 模拟键盘按键吗? - V2EX 外行请教京东 618 寻金记是怎么实现的? - V2EX 请教 jquery 跟换图片地址后展示的问题 - V2EX function 返回 ajax 结果 - V2EX Jquery 在移动端如何让返回能够不刷新页面? - V2EX jq ajax 返回的数据怎么获取其中一部分? - V2EX jquery 循环绑定事件问题 - V2EX jquery 表单验证 each 为什么不能 key 变量 - V2EX jquery 引入在底部 $ready 就要用到$ 但页面还没加载 jquery 不用$ready 下面的 jq 代码就没办法运行 - V2EX 注册了个域名,专门用于自己插件库的演示和文档说明 - V2EX 捏了个小 app,求推荐好看的下载页面模板 - V2EX 关于跟随鼠标移动的两个 js 功能合并问题,求解! - V2EX 新手问个问题呗? - V2EX 最新最全的城市三级联动插件 - V2EX 分享一个基于 jQuery 开发的强大的 CMS - V2EX 浮动 [电梯] 或 [回到顶部] 小插件: iElevator.js - V2EX 自制 WEB 前端插件库,欢迎使用~ bootstrap modal event 多次绑定 - V2EX Jquery 如何实现 Ajax 自动更新 table,并且不影响 js 事件 - V2EX 愿意付费帮忙修改一个 jq 插件! - V2EX 请问下 draggable 怎么实现拖动前后的元素不一样 - V2EX 自己写的一套 jquery 组件库 jquery mobile 的动态加载感觉好难用啊 jquery data() 返回数据类型不统一 - V2EX V2 的大神们帮我看看, JQuery 跨域请求遇到点问题 - V2EX
使用 jquery.validate 插件对动态新增的表单进行校验 - V2EX
fanne · 2020-05-13 · via jQuery

目前提交表单的时候只会对第一行表单能生效,新增的表单无法校验

如何对动态生成的表单进行同步校验?

<script src="{% static 'js/jquery-2.1.1.js' %}"></script>
<script src="{% static 'js/bootstrap.js' %}"></script>
<script src="{% static 'js/jquery.validate.js' %}"></script>
<script src="{% static 'js/messages_zh.min.js' %}"></script>
<script type="text/javascript" src="{% static 'js/jquery.editable-select.min.js' %}"></script>
<form class="form-horizontal" id="jsStayForm" method="post">
    <table>
        <tr id="tradds">
            <td>
                <select class="form-control m-b" name="virtual_cpu" id="virtual_cpu" autocomplete="off">
                        {% for  cpu_i in cpu_list %}
                            <option value="{{ cpu_i }}">{{  cpu_i  }}</option>
                        {% endfor %}
                </select>
            </td>
            <td>
                <select class="form-control m-b" name="virtual_mem" id="virtual_mem" autocomplete="off">
                        {% for  mem_i in mem_list %}
                            <option value="{{ mem_i }}">{{  mem_i  }}</option>
                        {% endfor %}
                </select>
            </td>
    </table>
    <button class="btn btn-primary" type="button" id="addCenterIpGrpBtn" onclick="addCenterIpGrp(this)">新增一行</button>
    <button class="btn btn-primary btn-danger"  id="jsStayBtn">添加虚拟机</button>
</form>

<script type="text/javascript">

##此处是进行使用插件,对下拉菜单进行可输入扩展
$('#virtual_cpu').editableSelect({
	effects: 'slide'
});

$('#virtual_mem').editableSelect({
	effects: 'slide'
});


### 此处对需要动态添加输入表单进行扩展
var varCount =1;
function addCenterIpGrp(obj) {
    varCount++;
    console.log(varCount);
    html = '<tr id="tradds">\n' +
        '    <td>\n' +
        '        <select class="form-control" name="virtual_cpu" id="virtual_cpu' + varCount + '" autocomplete="off">\n' +
        '                {% for  cpu_i in cpu_list %}\n'+
            '                    <option value="{{ cpu_i }}">{{  cpu_i  }}</option>\n'+
            '                {% endfor %}\n' +
        '        </select>\n' +
        '    </td>\n' +
        '    <td>\n' +
        '        <select class="form-control m-b" name="virtual_mem" id="virtual_mem' + varCount + '" autocomplete="off">\n' +
        '                {% for  mem_i in mem_list %}\n'+
            '                    <option value="{{ mem_i }}">{{  mem_i  }}</option>\n'+
            '                {% endfor %}\n' +
        '        </select>\n' +
        '    </td>\n' +
        '</tr>';

    ### 动态新增表单
    var d1 = document.getElementById('tradds');
    d1.insertAdjacentHTML('afterend', html);

    $("#virtual_cpu" + varCount).editableSelect({
        effects: 'slide'
    });

    $("#virtual_mem" + varCount).editableSelect({
        effects: 'slide'
    });


   ### 在此处,对动态添加的表单使用 jquery.validate 校验
    $("#virtual_cpu" + varCount).rules("add", {
        required: true,
        digits: true,
        min: 1,
        max: 64,
        messages: {
            digits: "请输入正整数"
        }
    });
}


##对整体表单进行校验
$("#jsStayForm").validate({
    rules:{
        virtual_cpu:{
            required:true,
            digits:true,
            min:1,
            max:64,
        },
        virtual_mem:{
            required:true,
            digits:true,
            min: 1,
            max: 128,
        },
        
    submitHandler:function(form) {
        alert('ddd');

        $.ajax({
            .....
        });

    }
});

<script>

image