检测指定元素是否存在某个特定的属性

var attr = $(this).attr('name');

// For some browsers, `attr` is undefined; for others,
// `attr` is false.  Check for both.
if (typeof attr !== typeof undefined && attr !== false) {
    // ...
}

html中select下拉菜单的required属性目前浏览器均不支持检测,也就是说,当你设置了required属性,但如果用户不选择下拉,貌似浏览器会选择无视,继续指定如表单提交等操作。

通过上面是代码稍加改造,我们可以来校验下拉菜单的必选属性:

        // 下拉必选,默认未选择 value = -1
        var option_value = true;
        $(form_id + " select option:selected").each(function() {
            // 查看当前下拉option的父元素select是否具有required属性
            var required = $(this).parent().attr('required');
            option_value = $(this).val();
            if (typeof required !== typeof undefined && required !== false && option_value == '-1') {
                option_value = false;
                return false;
            }
        });

        if (option_value === false ) {
            alert('*星标为必选项目!');
            return false;
        }

写一条评论

发表评论

电子邮件地址不会被公开。 必填项已用*标注