回答:
次の属性を追加するだけです
// for disabled i.e. cannot highlight value or change
disabled="disabled"
// for readonly i.e. can highlight value but not change
readonly="readonly"
jQueryのは、(代替要素に変更を作るdisabled
ためreadonly
の設定について以下にreadonly
属性)。
$('#fieldName').attr("disabled","disabled")
または
$('#fieldName').attr("disabled", true)
注:jQuery 1.6以降では、.prop()
ではなくを使用することをお勧めします.attr()
。上記のコードは、の代わり.attr()
を除いてまったく同じように機能します.prop()
。
あなたは、単にそれをマークすることによって、これを行うことができますdisabled
かenabled
。このコードを使用してこれを行うことができます:
//for disable
$('#fieldName').prop('disabled', true);
//for enable
$('#fieldName').prop('disabled', false);
または
$( '#fieldName')。prop( 'readonly'、true);
$( '#fieldName')。prop( 'readonly'、false);
--- attrの代わりにpropを使用する方が良いです。
この例を使用して、テキストボックスを読み取り専用にするかどうかを指定します。
<input type="textbox" class="txt" id="txt"/>
<input type="button" class="Btn_readOnly" value="Readonly" />
<input type="button" class="Btn_notreadOnly" value="Not Readonly" />
<script>
$(document).ready(function(){
('.Btn_readOnly').click(function(){
$("#txt").prop("readonly", true);
});
('.Btn_notreadOnly').click(function(){
$("#txt").prop("readonly", false);
});
});
</script>
2すなわち、属性、ありreadonly
とdisabled
半読み取り専用の入力を行うことができ、。しかし、それらの間には小さな違いがあります。
<input type="text" readonly />
<input type="text" disabled />
readonly
属性により、入力テキストが無効になり、ユーザーはそれを変更できなくなります。disabled
属性は入力テキストを無効(変更不可)にするだけでなく、送信することもできません。jQueryアプローチ(1):
$("#inputID").prop("readonly", true);
$("#inputID").prop("disabled", true);
jQueryアプローチ(2):
$("#inputID").attr("readonly","readonly");
$("#inputID").attr("disabled", "disabled");
JavaScriptアプローチ:
document.getElementById("inputID").readOnly = true;
document.getElementById("inputID").disabled = true;
PSはでprop
導入されましたjQuery 1.6
。
与えられた-
<input name="foo" type="text" value="foo" readonly />
これは機能します-(jquery 1.7.1)
$('input[name="foo"]').prop('readonly', true);
readonlyとreadOnlyでテストしました-両方とも動作しました。
多分無効にされた属性を使用してください:
<input disabled="disabled" id="fieldName" name="fieldName" type="text" class="text_box" />
または、ラベルタグを使用するだけです;)
<label>
<html xmlns="http://www.w3.org/1999/xhtml">
<head >
<title></title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
</head>
<body>
<div>
<input id="fieldName" name="fieldName" type="text" class="text_box" value="Firstname" />
</div>
</body>
<script type="text/javascript">
$(function()
{
$('#fieldName').attr('disabled', 'disabled');
});
</script>
</html>
setReadOnly(state)はフォームに非常に役立ちます。フィールドをsetReadOnly(state)に直接またはさまざまな条件から設定できます。ただし、readOnlyを使用して、セレクターに不透明度を設定することをお勧めします。それ以外の場合、attr = 'disabled'も同じ方法。
readOnlyの例:
$('input').setReadOnly(true);
またはさまざまな条件を通じて
var same = this.checked;
$('input').setReadOnly(same);
ここでは、stateブール値を使用して、チェックボックスのクリックに応じて入力からreadonly属性を設定および削除しています。
HTMLで
$('#raisepay_id').attr("readonly", true)
$("#raisepay_id").prop("readonly",true);
ブートストラップで
$('#raisepay_id').attr("disabled", true)
$("#raisepay_id").prop("disabled",true);
jQueryは変化するライブラリであり、定期的に改善される場合があります。.attr()はHTMLタグから属性を取得するために使用されますが、完全に機能的ですが、.prop()は後でより意味的になるように追加され、「チェック済み」や「選択済み」などの値のない属性でより適切に機能します。
JQueryの新しいバージョンを使用している場合は、可能な限り.prop()を使用することをお勧めします。