使用 onclick 禁用文本输入

Posted

技术标签:

【中文标题】使用 onclick 禁用文本输入【英文标题】:Disabled Text Input with onclick 【发布时间】:2013-09-19 22:48:29 【问题描述】:

对于禁用的文本输入,我需要一种捕获 onclick 的方法。 我宁愿不使用 jQuery,但如果没有 javascript 替代品,我会使用它。 提前致谢

编辑: 我尝试简单地将 onclick="" 添加到禁用的文本字段中,但这不起作用。 没有jquery有什么办法吗? 谢谢

【问题讨论】:

textInput.onclick = function() alert('Like this?') @Doorknob 我应该把这段代码放在哪里?它需要jQuery吗? 澄清一下,jQuery 是 101% JavaScript。 【参考方案1】:

委托事件给here这样的父元素怎么样?

<span style="position:relative;" onClick="event.target.value='clicked';">
  <input type="text" disabled "/>
</span>

如果我的回答可以接受,请发表评论,我会做出解释。

【讨论】:

谢谢,这太完美了!【参考方案2】:

这是 Rahul Tripathi 使用纯 javascript 提出的修改后的jsfiddle。

这是使它起作用的功能:

document.getElementById("textInput").onclick = function() 
    alert("Input clicked");

【讨论】:

【参考方案3】:

你可能正在寻找这个:-

$("div").click(function (evt) 
    $(this).hide().prev("input[disabled]").prop("disabled", false).focus();
);

DEMO JSFIDDLE

【讨论】:

OP 说他们想不用 jQuery。

以上是关于使用 onclick 禁用文本输入的主要内容,如果未能解决你的问题,请参考以下文章

禁用后在 onClick 事件上再次将输入重置为能够

Electron 选择带有文本输入和 onclick 事件的目录

如果执行 onclick,如何禁用 HREF?

Android - 禁用 ListView 选择突出显示但保持启用 OnClick [重复]

有一个禁用的onClick?

当设备视口大于指定大小时禁用onClick事件[重复]