如何在输入文本中阻止写入?

Lui*_*uis 8 javascript

我只是创建一个预订系统,我希望用户将从日历中选择一个日期,它将在输入文本中显示 - 我做了!

现在我想阻止输入文本中的写入(当用户选择日期时,只需在日历中写入日历).我该怎么做?我猜JavaScript,但是怎么样?我不懂JS墙壁..

非常感谢你!

Sar*_*raz 34

为您的元素提供readonly属性,这将禁止用户在其中键入任何内容.但是,您仍然可以编写以通过javascript添加,例如选择日期时.这是一个例子:

<input type="text" id="txt" readonly="readonly">
Run Code Online (Sandbox Code Playgroud)

JavaScript的:

var el = document.getElementById('txt');
el.value = "Testing......";
Run Code Online (Sandbox Code Playgroud)

工作演示

  • 这应该是答案 (3认同)

Mar*_*rko 7

<input type="text" id="someId" disabled="disabled" />
Run Code Online (Sandbox Code Playgroud)

disabled属性将阻止任何用户输入,但您仍然可以通过javascript日历方法写入它.

  • 在下面提到的答案中使用 readonly 是一个更好的选择 (3认同)

Ken*_*res 5

对于那些想要阻止打字但又不想使用禁用样式的人,可以尝试:

<input type="text" onkeypress="return false;"/>
Run Code Online (Sandbox Code Playgroud)

  • 如果用户尝试粘贴某些内容,这将不起作用 (2认同)