を働いていない:jQueryの.each関数は、私は次のように動作しない理由を理解しようとしています
function SetMaxLength() {
var form = $("body").find("form");
form.each(function() {
var elements = $(this).find("input");
elements.each(function() {
var attr = $(this).attr('data-val-maxlength-max');
if (typeof attr !== typeof undefined && attr !== false) {
$(this).attr('maxlength', attr.value);
}
});
});
}
<form action="/go/somewhere" autocomplete="off" class="form-one" method="post" role="form" novalidate="novalidate">
<input data-val-maxlength="Invalid Email" data-val-maxlength-max="254" type="text" value="">
</form>
私はそれをステップ実行するとき、それは1つのフォームを見つけたが、その後、各部分に、それはちょうどそれをスキップそれ以上のステップ。
基本的には、data-val-maxlength-max
属性を見て、その値をとり、要素にmaxlength
属性を挿入すると仮定します。
JsFiddle:あなたはすでにjQueryのは、あなたのページに含まれているのでhttps://jsfiddle.net/j04vue8r/3/
「
@DavidThomasはフィドルでその部分を逃した、私はフィドルを更新しました – Bojan
@DavidThomasあなたは理由がそれぞれ動作していないと言っているのですか? 1つのフォームしか見つからないためですか? – Bojan