Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript ng单击不处理子输入标记(mozilla firefox)_Javascript_Jquery_Html_Css_Mozilla - Fatal编程技术网

Javascript ng单击不处理子输入标记(mozilla firefox)

Javascript ng单击不处理子输入标记(mozilla firefox),javascript,jquery,html,css,mozilla,Javascript,Jquery,Html,Css,Mozilla,我已经得到了上面的HTML脚本 父div具有单击功能。当我在firefox中单击子输入标记时,父项的单击事件不起作用,但在chrome中它工作正常。从输入标记中删除disabled将使其在mozilla上正常工作,但我要求禁用此输入标记 如何使其在firefox上工作而不从输入标签中删除disabled(禁用)您是否使用了readonly(只读)而不是disabled(禁用) <div ng-click="hello()"> <input type="password"

我已经得到了上面的HTML脚本

父div具有单击功能。当我在firefox中单击子输入标记时,父项的单击事件不起作用,但在chrome中它工作正常。从输入标记中删除disabled将使其在mozilla上正常工作,但我要求禁用此输入标记


如何使其在firefox上工作而不从输入标签中删除disabled(禁用)

您是否使用了readonly(只读)而不是disabled(禁用)

<div ng-click="hello()">
    <input type="password" disabled>
</div>

我知道这是一个老问题,但由于我在完成angular 8项目时在同一个问题上浪费了大半个小时,我想我还是发布对我有用的答案吧

首先,这不是一个角度的问题,而是Firefox的问题。Firefox似乎根本不会从禁用的输入字段中触发单击事件。因此,单击输入时,没有要传播到父级的事件。有关详细信息,请签出此线程:。顺便说一句,我在对公认答案的评论中找到了这个解决方案,所以这要归功于

因此,解决此行为的最简单方法是向输入元素添加以下css样式:

<div ng-click="hello()">
<input type="password" readonly>
</div>
这可以防止元素对指针事件做出反应,这意味着指针事件也不会被禁用的输入“吸收”,并从父元素激发

请参见下面的完整示例: 函数hello(){ document.getElementById('demo').innerHTML='Hi there!'; }
div{
背景色:浅绿色;
光标:指针;
}
div输入:禁用{
指针事件:无;
}


ng click不应该是onclick吗?或者您正在使用angularjs?不,我正在使用Angular1 JS请显示父级单击和控制器-这是父级div…-这是我的孩子是的我有。但正如我提到的,我对应用程序的要求不允许我删除“禁用”,非常感谢!在同样的问题上,它确实帮助了我。
pointer-events: none;