使用jquery将属性附加到input元素

时间:2016-04-20 08:41:42

标签: javascript jquery asp.net-mvc

如果我有像这样呈现的输入元素

<input id="Requester_Value" class="form-control ui-autocomplete-input valid" type="text" value="" name="Requester.Value" autocomplete="off" aria-invalid="false">

如何在此输入元素中使用jquery add属性

data-val-required="The Requested value field is required." data-val-number="The field Requester must be a string." 

5 个答案:

答案 0 :(得分:3)

如果要为元素添加属性,请尝试。

$('#Requester').attr("data-val-required","The Requested value field is required.");

答案 1 :(得分:1)

您可以使用.attr()获取设置属性值:

$('#Requester').attr({'data-val-required':'The Requested value field is required.' ,'data-val-number':'The field Requester must be a string.'});
带有.attr()

data-*将设置该元素的数据属性和属性值。而.data()只会在内部设置数据属性,而值不会反映在属性中。

答案 2 :(得分:1)

试试这个:

$("#Requester_Value").attr("data-val-required","The Requested value field is required.");
$("#Requester_Value").attr("data-val-number","The field Requester must be a string.")

答案 3 :(得分:0)

您可以使用.attr()设置元素的属性,请参阅jQuery文档here

    $('#Requester_Value').attr("data-val-required","The Requested value field is required.");

答案 4 :(得分:0)

好的,如果你想将这些数据添加到输入中,那么将你的输入放在容器这样的div中并使用这个方法

False

https://jsfiddle.net/L2roc4ka/

var $div = $('div'); var spltInp = $div.html().split(' '); var i = Math.floor(spltInp.length / 3); var srt = spltInp.splice(i, 0, 'data-val-required="The Requested value field is required." data-val-number="The field Requester must be a string." '); var newHtm = spltInp.join(' '); $div.append(newHtm).children().eq(0).remove(); (输入)中的第一个split() html然后,在数组长度(i)之间使用一些数字以避免在输入之外放置attr,并使用此数字作为索引attr的起点按div,最后将数组转换为splice()字符串,然后将join()转换为div,然后删除旧数组。

注意:如果您要使用此技巧,请避免使用多类,因为它可能会导致语法错误,而是将这些类放在另一个容器中,例如section并设置样式或避免使用此类。< / p>