Javascript 是否将输入表单设置为只读?

Javascript 是否将输入表单设置为只读?,javascript,jquery,html,input,Javascript,Jquery,Html,Input,我有一堆表单,上面有很多字段。用户现在要求我提供每个表单的“只读”版本。我会将每个字段重新编码为 <xsl:choose> <xsl:when test="/..../permission = 'E'> <input ....> </xsl:when> <xsl:otherwise> ... </xsl:otherwise> </xsl:choose> 从使用XSLT的事实来看,我认为您是在一个XHT

我有一堆表单,上面有很多
字段。用户现在要求我提供每个表单的“只读”版本。我会将每个字段重新编码为

<xsl:choose>
<xsl:when test="/..../permission = 'E'>
  <input ....>
</xsl:when>
<xsl:otherwise>
  ...
</xsl:otherwise>
</xsl:choose>


从使用XSLT的事实来看,我认为您是在一个XHTML doctype中输出的,那么为什么不让您创建的输入元素具有disabled属性呢

<input type="..." disabled="disabled" />

您可以在XSLT中立即执行此操作。如果您在所有地方都使用相同的输入,只需为其创建一个模板,并在测试中使用

评论后编辑 显然还有一个只读属性。傻瓜:)


我走了一条简单的路线:

       $(function () {
            <xsl:if test=".../permission != 'E'">
                $('input[type="text"').attr('readonly','readonly');
            </xsl:if>
        });
$(函数(){
$('input[type=“text”').attr('readonly','readonly');
});

我不知道为什么我以前从未听说过“readonly”属性。

只读字段和禁用字段之间有区别- 只读字段的值与表单一起上载,与禁用字段不同,只读元素可以使用选项卡、聚焦和选择


另外,如果您在纯javascript中更改值,则必须使用“readOnly”,而html不区分大小写,大多数库都会为您处理它。

事实上,我发现“readOnly”似乎有效。我不知道它在那里。嘿,您知道什么,它一直在这里:)谢谢分享!这里需要注意的一点是如果您有一个相当大的DOM,那么在这一行实际执行之前,这些字段将是暂时可编辑的。
<input type="..." readonly="readonly" />
       $(function () {
            <xsl:if test=".../permission != 'E'">
                $('input[type="text"').attr('readonly','readonly');
            </xsl:if>
        });