我如何使用jQuery使input只读?
我有以下input:
<input id="fieldName" name="fieldName" type="text" class="text_box" value="Firstname"/>
我怎样才能使用jQuery使这个元素成为只读input,而不改变元素或其值?
现在使用jQuery 1.6.1或更高版本,build议在设置布尔属性/属性时使用.prop()。
$("#fieldName").prop("readonly", true);
只需添加以下属性
// for disabled ie cannot highlight value or change disabled="disabled" // for readonly ie can highlight value but not change readonly="readonly"
jQuery对元素进行更改(在以下设置readonly
属性时,replace为readonly
readonly
)。
$('#fieldName').attr("disabled","disabled")
要么
$('#fieldName').attr("disabled", true)
注意:从jQuery 1.6开始,build议使用.prop()
而不是.attr()
。 上面的代码将完全相同,除了replace.attr()
. .prop()
。
要使input只读使用:
$("#fieldName").attr('readonly','readonly');
使其读/写使用:
$("#fieldName").removeAttr('readonly');
添加disabled
属性将不会发送带有post的值。
您只需将其标记为disabled
或enabled
。 您可以使用此代码来执行此操作:
//for disable $('#fieldName').prop('disabled', true); //for enable $('#fieldName').prop('disabled', false);
—它更好地使用道具,而不是attr。
也许使用禁用的属性:
<input disabled="disabled" id="fieldName" name="fieldName" type="text" class="text_box" />
或者只是使用标签标签:;)
<label>
使用这个例子来使文本框ReadOnly或不。
<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>
<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>
也许这也是有意义的
$('#fieldName').prop('readonly',false);
可以用作切换选项
在JQuery 1.12.1中,我的应用程序使用代码:
$('"#raisepay_id"')[0].readOnly=true;
$('"#raisepay_id"')[0].readOnly=false;
它的工作。
setReadOnly(state)对于窗体非常有用,我们可以直接或者从各种条件设置任何字段为setReadOnly(state)。但是我更喜欢使用readOnly来设置select器的不透明度,否则attr ='disabled'也会像同样的方式。
readOnly例子:
$('input').setReadOnly(true);
或者通过各种编纂方式
var same = this.checked; $('input').setReadOnly(same);
这里我们使用状态布尔值来设置和从input中删除只读属性,取决于checkbox的点击。
在html中
$('#raisepay_id').attr("readonly", true) $("#raisepay_id").prop("readonly",true);
在自举
$('#raisepay_id').attr("disabled", true) $("#raisepay_id").prop("disabled",true);
JQuery是一个不断变化的库,有时他们会定期进行改进。 .attr()用于从HTML标签中获取属性,并且它是完美的function.prop()稍后被添加为更多的语义,并使用“checked”和“selected”等无值属性更好地工作。
build议如果您使用的是更高版本的JQuery,则应尽可能使用.prop()。