首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在使用Ajax之前,确保我表单中的所有表单都有输入。

在使用Ajax之前,确保我表单中的所有表单都有输入。
EN

Stack Overflow用户
提问于 2016-03-07 17:21:46
回答 3查看 42关注 0票数 0

我有一组输入框,如果单击add按钮,您可以添加越来越多的这些表单。在我的表单中,我可以提交数据,当您重新加载页面时,我已经将其显示出来。但是,在运行AJAX之前,我必须确保所有字段都有值。我在这个项目中使用Jquery。

我不能使用验证插件,因为我正在运行magento,每次我尝试在“无冲突模式”运行插件时,插件似乎都不起作用。因为我正在运行Magento,这意味着我需要在无冲突模式下运行Jquery。

我已经看到了其他解决方案,但它们都与输入框有关,我有1个输入框和2个选择框。如何确保在ajax调用之前填充所有输入框,并确保所有未禁用的复选框都有所选内容?

以下是我的HTML的一部分:

代码语言:javascript
运行
复制
<form>
    <input id="12">
    <select id="1">
        <option disabled="disabled" selected="selected">select please</option>
        <option value="01">Option 1</option>
        <option value="02">Option 2</option>           
     </select>
     <select id="2">
        <option disabled="disabled" selected="selected">Select Please</option>
        <option value="01">Option 1</option>
        <option value="02">Option 2</option>           
     </select>
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2016-03-07 17:40:59

使用单击事件,如果在.val()上使用<select/>,如果在<option/>上没有value属性,它将返回null

注意:如果在选项上添加了value属性,这将无法工作。

编辑:做!==比较会更快。

代码语言:javascript
运行
复制
$("#submit-button").click(function(){
    //if this is true, then it is valid
    alert($("#1").val() !== null);
});
票数 2
EN

Stack Overflow用户

发布于 2016-03-07 17:48:23

您可以通过将输入值输入到属性中来完成此操作。

此脚本将提醒您的结构中有多少输入没有完成或丢失。

(没有jQuery)

代码语言:javascript
运行
复制
var myForm=document.getElementsByTagName("form")[0];
var formSelectors=myForm.getElementsByTagName("select"),
    formTextBoxes=myForm.getElementsByTagName("input"),
    missing=0;
var i,
    length=formSelectors.length;
for(i=0;length>i;i++){
    if(formSelectors[i].value===formSelectors[i].children[0].value)
        //Check if select value is equal to
        //select please or Select please
        //MISSING! (select)
        missing++
}
length=formTextBoxes.length;
for(i=0;length>i;i++){
    if(formTextBoxes[i].value.length===0)
        //MISSING! (input)
        missing++
}
alert(missing)
票数 1
EN

Stack Overflow用户

发布于 2016-03-07 17:34:37

试试这个:

代码语言:javascript
运行
复制
if($('#12').val()!='') {
// your code
}
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35849990

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档