猿问

启用 JavaScript 时切换禁用属性的值

我的网站上有一个输入标签,它使用 javascript 进行自动完成... <input>当我的用户没有在其系统上启用 javascript 时,我希望标签的禁用属性为 true。但是当启用 Javascript 时,我想要disabled=false. 我该怎么做呢?

到目前为止我所做的:

<input name="xyz" class="xyzautocomplete" type="text" id="name" value="enter name" disabled="true">

将使用

document.getElementById("name").disabled = false;

在同一个<input>标签内,script=""这两种情况都适用?

IE,

 <input name="xyz" script="document.getElementById("name").disabled = false;" class="xyzautocomplete" type="text" id="0" value="enter name" disabled="True">

如果没有,我该怎么办?


拉莫斯之舞
浏览 111回答 3
3回答

胡子哥哥

关于内联 JavaScript,其他答案是正确的。没有script属性,也onload没有为输入定义属性,因此您的脚本需要位于<script>输入后面的元素中。然而,现有的答案都没有提到这是disabled一个布尔属性,也就是说,它的存在或不存在决定了输入是否被禁用。它的价值并不重要。因此在 JavaScript 中将属性设置为值是行不通的。该属性仍然存在,只是具有不同的值!您需要做的就是完全删除该属性。document.getElementById("name").removeAttribute('disabled');<input&nbsp;name="xyz"&nbsp;class="xyzautocomplete"&nbsp;type="text"&nbsp;id="name"&nbsp;value="enter&nbsp;name"&nbsp;disabled="true">

素胚勾勒不出你

如果 javascript 被禁用,那么所有 javascript 语法都将不起作用。你必须这样做Tag请尝试以下解决方案 -<script>&nbsp; &nbsp; &nbsp;<!--&nbsp; &nbsp; &nbsp; &nbsp; document.write('<input name="xyz" class="xyzautocomplete" type="text" id="0" value="enter name" >')&nbsp; &nbsp; &nbsp;-->&nbsp; </script>&nbsp; <noscript>&nbsp; &nbsp; <input name="xyz" class="xyzautocomplete" type="text" id="0" value="enter name" disabled >&nbsp; </noscript>

慕尼黑8549860

将 JS 内联从来都不是好方法。将其放在 html 元素之后。此外,您的目标 id 为 xyz 且不存在。你的id是0document.getElementById("0").disabled&nbsp;=&nbsp;false;<input&nbsp;name="xyz"&nbsp;&nbsp;class="xyzautocomplete"&nbsp;&nbsp;disabled&nbsp;&nbsp;type="text"&nbsp;id="0"&nbsp;value="enter&nbsp;name">如您所见,输入被禁用,但 JS 使其启用。没有JS的人将无法使用输入。
随时随地看视频慕课网APP

相关分类

Html5
我要回答