在jQuery中将输入字段添加为只读 (readonly)

3

我有问题在一些输入框中添加readonly属性。

这是我在<head>部分的代码:

$(document).ready(function() {
    $('#powermail_field_ordreid').prop('readonly', true);
    $('#powermail_field_destination').prop('readonly', true);
});

然后我有6个输入字段中的2个需要添加readonly属性。

<div id="powermail_fieldwrap_9" class="powermail_fieldwrap powermail_fieldwrap_input powermail_fieldwrap_9 ">
    <label class="powermail_label" for="powermail_field_ordreid"> Ordre id </label>
    <input id="powermail_field_ordreid" class="powermail_field powermail_input " type="text" value="0521104821">
</div>
<div id="powermail_fieldwrap_7" class="powermail_fieldwrap powermail_fieldwrap_input powermail_fieldwrap_7 ">
    <label class="powermail_label" for="powermail_field_destination"> Destination </label>
    <input id="powermail_field_destination" class="powermail_field powermail_input " type="text" value="Luxembourg">
</div>

我曾经尝试使用.attr(),现在我正在使用.prop(),因为我正在使用jQuery 1.10+,但是我仍然可以编辑输入字段,这是怎么回事。

... 编辑 ... 在jsfiddel上它的效果很好 - 所以有人能告诉我是否有其他脚本阻止了它吗?在http://wnf.dk/bestillingsform.html?tx_powermail_pi1[field][7]=Luxembourg上,前两个字段都有readonly属性。


5
您的代码运行良好 > http://jsfiddle.net/egQy3/ - BenM
正如@BenM所说,这个很好用。你有检查代码中其他地方的控制台错误吗? - Rory McCrossan
你是否在使用重复的ID?这些元素是在DOM准备好后动态生成的吗?为什么不直接在这些输入框上默认设置它?另外,你应该尝试在jsFiddle上复制你的问题。 - A. Wolff
很有趣,我可以在jsfiddle中看到它正在工作,但在主代码中却不起作用。@A.Wolff是的,我也这么认为,关于生成。 - Thomas BP
抱歉,本AI无法查看您所提到的问题中的编辑。请提供原始文本以供翻译。 - Thomas BP
显示剩余3条评论
2个回答

2

接近了,但似乎只缺少响应式图片插件,而不是整个jQuery。 - Frédéric Hamidi
嗨,Frederic,我在30分钟前为user2261516编辑了代码,以便将一些JS文件从页脚切换到页眉,谢谢user 2261516。 - Thomas BP

1
<script>
    $(document).ready(function(){
        $('#powermail_field_ordreid').attr('readonly', true);
        $('#powermail_field_destination').attr('readonly', true);
    });
</script>

它适用于jQuery <1.9

jQuery 1.9+

<script>
        $(document).ready(function(){
            $('#powermail_field_ordreid').prop('readonly', true);
            $('#powermail_field_destination').prop('readonly', true);
        });
    </script>

你可以查看http://jsfiddle.net/najibcse/M7rkB/


3
但是 OP 使用的是 jQuery 1.10+ - A. Wolff
你的回答有什么意义呢?提问者已经在使用你的第二个代码片段了。 - Frédéric Hamidi
我已经使用了http://code.jquery.com/jquery-1.11.1.min.js进行测试,attr和prop都适用于我。@Frédéric Hamidi请查看http://jsfiddle.net/najibcse/M7rkB/。 - Najib
1
@Najib,您没有认真阅读问题,并且没有看到/读到其他人所写的内容。 - Thomas BP
@thomas-bog-petersen 嗯,目前我正在jsfiddle上进行测试。 - Najib

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接