web-dev-qa-db-ja.com

入力フィールドにjQuery addが必要

私はすべての入力フィールドにhtml5検証を使用してjQueryが自動的にrequiredを書くようにする方法を探していましたが、どこにそれを書くべきかを伝えるのに問題があります。

これを取りたい

 <input type="text" name="first_name" value="" id="freeform_first_name"
 maxlength="150">

終了タグの前にrequiredを自動的に追加します。

 <input type="text" name="first_name" value="" id="freeform_first_name"
 maxlength="150" required>

私はの線に沿って何かをすることができると思った

$("input").attr("required", "true");

しかし、うまくいきません。任意の助けは大歓迎です。

130
Miura-shi
$("input").prop('required',true);

DEMO FIDDLE

330
Unknown

あなたはそれをattrを使って行うことができます、あなたがした間違いはあなたが真の引用符を入れることです。その代わりにこれを試してください:

$("input").attr("required", true);
40
Joz Naveen Joz

以下の実装が有効であることがわかりました。

$('#freeform_first_name').removeAttr('required');

$('#freeform_first_name').attr('required', 'required');

これらのコマンド(attr、removeAttr、prop)は、使用しているJQueryのバージョンによって動作が異なります。こちらのドキュメントを参照してください。 https://api.jquery.com/attr/

21
John Meyer

私はjquery 1.11.1がこれを確実にしないことを発見しました。

私は$('#estimate').attr('required', true)$('#estimate').removeAttr('required')を使いました。

requiredを削除することは信頼できませんでした。 required属性を値なしで残すことがあります。 requiredはブール値の属性なので、単なる存在は、値なしで、ブラウザにはtrueとして見られます。

このバグは断続的でした、そして私はそれをいじるのに飽きました。 document.getElementById("estimate").required = truedocument.getElementById("estimate").required = falseに切り替えました。

3

.attrメソッドを使う

.attr(attribute,value); // syntax

.attr("required", true);
// required="required"

.attr("required", false);
// 

.propを使う

.prop(property,value) // syntax

.prop("required", true);
// required=""

.prop("required", false);
//

ここからもっと読む

https://stackoverflow.com/a/5876747/5413283

2
TheHive

true二重引用符で囲むべきではありません ""

$(document).ready(function() {            
   $('input').attr('required', true);   
});

支柱も使えます

jQuery(document).ready(function() {            
   $('input').prop('required', true);   
}); 

trueの代わりにrequiredを試すことができます。といった

$('input').prop('required', 'required');
2
Rokan Nashp