Javascript 如果选项文本包含Select,则选择框验证

Javascript 如果选项文本包含Select,则选择框验证,javascript,jquery,html,validation,Javascript,Jquery,Html,Validation,如果我有一个选择框,文本为select Insert Type of Addon 例如,使用文本选择大小写和剪辑作为默认选项以及其他5个选择框,我只想在没有选择框包含单词Select时验证此表单 这是使用Virtuemart,无法确保正确选择选项 我的想法是,使用上述方法,在提交时在选项文本中找到Select值 <select name="customPrice[0][27]" id="customPrice027"> <option value="265">

如果我有一个选择框,文本为select Insert Type of Addon

例如,使用文本选择大小写和剪辑作为默认选项以及其他5个选择框,我只想在没有选择框包含单词Select时验证此表单

这是使用Virtuemart,无法确保正确选择选项

我的想法是,使用上述方法,在提交时在选项文本中找到Select值

 <select name="customPrice[0][27]" id="customPrice027">
     <option value="265">Select Case &amp; Clip</option>
     <option value="266">$25.00 - Black - Large - 1</option>
     <option value="267">$0.00 - Black - None - 2</option>
     <option value="268">$10.00 - Beige - Small - 3</option>
     <option value="269">$20.00 - Beige - Large - 4</option>
     <option value="270">$0.00 - Beige - None - 5</option>
     <option value="271">$10.00 - Blue - Small - 6</option>
     <option value="272">$20.00 - Blue - Large - 7</option>
     <option value="273">$0.00 - Blue - None - 8</option>
     <option value="274">$10.00 - Gray - Small - 9</option>
     <option value="275">$20.00 - Gray - Large - A</option>
     <option value="276">$0.00 - Gray - None - B</option>
     <option value="277">$20.00 - Red - Large - R</option>
     <option value="278">$20.00 - Olive Drab - Large - D</option>
 </select>
这里有什么指示吗?我还希望这也验证提交按钮按下后,才允许它这样做

更新: 我的代码是依赖的,必须在选择按钮后停止表单提交。我知道预先定义的提交按钮的ID、类型、名称、标题和值

这是6个框中的一个,所有相同的条件都适合并触发此消息

这是我的代码,它不会在提交时停止。我可以发送一个私人信息链接,如果需要的网站的例子

     $(document).ready(function () {

       $( ".addtocart-button" ).click(function() {

        if($("option:contains('Select')").length){
           event.preventDefault();
           console.log("Select found");
        }


    });
})

使用选择器

JS小提琴:

已修改以使用提供的代码

JS Fiddle:

如果可以使用值在选择框中查找选择词,为什么要使用选项文本


希望有帮助

听起来您希望用户选择默认值以外的内容,如果是,请检查所选选项的文本

var valid = true;

$('select').each(function() {
    if ($('option:selected', this).text().indexOf('Select') != -1) valid = false;
    return valid;
});

这不起作用,第一个字段的值基于数据库ID是动态的,因此每个选项的值都不同。这是一个例子,不过还是要谢谢你!这可以检测select值,因此这很好。请在一分钟内查看我更新的帖子,查看我正在使用的代码,并在我的新版本中添加注释。@JustinBevan我已更新我的代码,以便在提交表单时使用fire,并在检测到Select时阻止提交。这非常有效!只需在检测到后更改操作,但它可以根据需要正常工作。我假设这对页面上的任何表单都有效,所以如果两个表单同时出现在一个页面上,这两个表单都会触发,对吗?我将所选条件更改为使用select选项:selected:包含“select”;第一个例子适用于任何形式,我在第一个例子下面提供了一个更具体的例子。啊,我明白了。再次感谢!你帮了我大忙,我确实学到了很多!
$("form").submit(function(e){
    if($("#customPrice027 option:selected:contains('Select')").length){
       e.preventDefault();
       alert("found");
    }
});
$( ".addtocart-button" ).click(function(e) {

    if($("#customPrice027 option:selected:contains('Select')").length){
       e.preventDefault();
       console.log("Select found");
    }
});
$('#sub').on('click', function() { 
   var selectval = $('#customPrice027').val();
   if(selectval == '265') { 
      alert("Gotcha!");
   }
});
var valid = true;

$('select').each(function() {
    if ($('option:selected', this).text().indexOf('Select') != -1) valid = false;
    return valid;
});