首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Jquery对选择字段进行表单验证

使用Jquery对选择字段进行表单验证
EN

Stack Overflow用户
提问于 2013-09-19 01:24:12
回答 3查看 143关注 0票数 1

当没有从评级表单中选择任何值时,Jquery不会提醒我。会不会是因为selected="selected“实际上被视为jQuery值?

代码语言:javascript
复制
  <label for="rating">Rating</label>
    <select id="rating" name="rating" />
        <option selected="selected" disabled="disabled">Select a Rating</option>
        <option value="Terrible">Terrible</option>
        <option value="Fair">Fair</option>
        <option value="Ok">Ok</option>
        <option value="Good">Good</option>
        <option value="Excellent">Excellent</option>
       </select>


      $(document).ready(function(){

        // No value for movie_title
        if ($('#movie_title').val() == "" ) {
            alert ("No Film");
        }

        // No Value for actor
        if ($('#leading_name').val() == "") {
            alert ("No actor");
        }

        // No value for rating
        if ($('#rating').val() == "") {
            alert ("No Rating");
        }

        //No value for review
        if ($('#review').val() == "") {
            alert ("No review");
        }

    // Focus on first form field.
        $("input:text:visible:first").focus();

   })
EN

回答 3

Stack Overflow用户

发布于 2013-09-19 01:28:26

这是因为如果未指定任何值,则缺省值将为文本。

将值0赋给您的默认选项,并对照该值进行检查:

代码语言:javascript
复制
<option selected="selected" value=0 disabled="disabled">Select a Rating</option>
票数 2
EN

Stack Overflow用户

发布于 2013-09-19 01:33:37

$('#rating').val()返回null

http://jsfiddle.net/KFpFq/

添加value属性在Chrome中似乎不起作用,尽管检查null可以。

代码语言:javascript
复制
console.log($('#rating').val()); //null
console.log($('#rating').val() == "0"); //false
console.log($('#rating').val() == null); //true
票数 1
EN

Stack Overflow用户

发布于 2013-09-19 01:29:51

您可以使用原生selectedIndex来查找第一个选择的索引- https://developer.mozilla.org/en-US/docs/Web/API/HTMLSelectElement

代码语言:javascript
复制
if($('#rating').get(0).selectedIndex === 0){alert("first item")}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18878552

复制
相关文章

相似问题

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