在这个jQuery中包含'required'属性

时间:2016-08-22 17:28:44

标签: jquery required

这是在jQuery文件中构建输入:

{% for contestant in contestants_dict|list_index:category.id %}
    {{ contestant }} </br>
{% endfor %}

我尝试将_buildScoreField: function() { return $('<input />' , { name: this.opt.scoreName, type: 'hidden' }).appendTo(this); }, 属性添加到此required元素中,但我从未见过它以这种方式格式化,所以我不确定该怎么做。

4 个答案:

答案 0 :(得分:0)

它使用this variant of $(),它允许您将对象中的属性,属性甚至某些方法作为第二个参数。将required: true添加到该对象(required: "required"也可以,但是jQuery了解required是一个布尔反射属性以及属性并正确处理你):

_buildScoreField: function() {
    return $('<input />' , {
       name: this.opt.scoreName,
       type: 'hidden',
       required: true // <====
    }).appendTo(this);
}

那就是说,隐藏输入required似乎......很奇怪。 : - )

答案 1 :(得分:0)

{ name: this.opt.scoreName , type: 'hidden' }是要创建的元素的属性。传递一个键值对作为附加选项。

{ name: this.opt.scoreName  , type: 'hidden', required: true }

此处可找到更多文档..

http://api.jquery.com/jQuery/#jQuery-html-attributes

答案 2 :(得分:0)

您无法创建“隐藏”类型的input元素。来自MDN <input> spec

  

必需
  此属性指定用户在提交表单之前必须填写值。当type属性为hidden,image或按钮类型(提交,重置或按钮)时,不能使用它。

考虑您尝试解决的用例,并使用适当的input类型和属性。

答案 3 :(得分:0)

由于您要添加属性required="required",请在构造函数中使用以下属性/值对:

required: 'required'

添加具有零长度值的属性也是有效的:required: ''

$('<input />' , {
    name: this.opt.scoreName,
    type: 'hidden',
    required: 'required'
})