Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/79.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 当用户在textarea中单击disabled=true时生成事件,告诉他们可以';我不能修改它_Javascript_Jquery - Fatal编程技术网

Javascript 当用户在textarea中单击disabled=true时生成事件,告诉他们可以';我不能修改它

Javascript 当用户在textarea中单击disabled=true时生成事件,告诉他们可以';我不能修改它,javascript,jquery,Javascript,Jquery,我想告诉用户,当他们尝试单击文本区域时,他们无法修改已被禁用的文本区域进行更新。我如何告诉他们为什么在这种情况下禁用它,例如使用警报 问题是,当我给textarea一个disabled属性时,它的事件也不会触发(至少在Chrome中是这样)。使用textarea标记中的onclick属性。你可以这样做: <textarea onclick="alert('CAN'T TOUCH THIS!')"> blahblahblahblahblahblahblah </texta

我想告诉用户,当他们尝试单击文本区域时,他们无法修改已被禁用的文本区域进行更新。我如何告诉他们为什么在这种情况下禁用它,例如使用警报


问题是,当我给textarea一个disabled属性时,它的事件也不会触发(至少在Chrome中是这样)。

使用textarea标记中的onclick属性。你可以这样做:

<textarea onclick="alert('CAN'T TOUCH THIS!')">
    blahblahblahblahblahblahblah
</textarea>

巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉
下面是另一个例子:

<textarea onclick="textareaclicked();">
    blahblahblahblahblahblahblah
</textarea>

<script type="text/javascript">
    function textareaclicked() {
        alert("CAN'T TOUCH THIS!");
    }
</script>

巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉
函数textareaclicked(){
警惕(“不能碰这个!”);
}
最后一个例子:

<textarea onclick="textareaclicked('Someone set up us the bomb :(');">
    blahblahblahblahblahblahblah
</textarea>

<script type="text/javascript">
    function textareaclicked(var s) {
        alert(s);
    }
</script>

巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉巴拉
函数textareaclicked(var s){
警报;
}

我猜您主要担心的是
disabled
属性不允许IE上的事件

但是,
readonly
属性执行以下操作:

<texarea readonly onclick="alert('Please do not edit me!');">

我认为您应该只使用
禁用的
html属性,并对禁用的元素执行一些时髦的操作,如灰色:

<style>
  .disabled {
    background-color:gray;
  }
</style>

<textarea disabled="disabled" class="disabled" title="Disable for update"></textarea>

.残疾人{
背景颜色:灰色;
}

我要说的是,把它放在一个范围内,然后把它作为事件。(请注意,它不允许在chrome中禁用的文本区域上单击事件)

HTML


jQuery

$("[disabled]")
    .wrap("<span></span>")
    .parent()
    .click(function(){
        alert("this "+this.firstChild.nodeName+" is disabled");
    });
$(“[禁用]”)
.wrap(“”)
.parent()
。单击(函数(){
警报(“此”+此.firstChild.nodeName+“已禁用”);
});

是的,您可以使用alert来执行此操作。说真的,问题是什么?你试着做了什么,怎么没用?您是否尝试过处理click事件?当我在clickevent中添加一个警报时,它会弹出,但仍然允许用户编辑该字段。如果我将其禁用,那么clickevent也将被禁用。谢谢,我错过了该属性。。。我希望禁用属性在所有浏览器中都能起到相同的作用,阻止事件,而不仅仅是IE?
$("[disabled]")
    .wrap("<span></span>")
    .parent()
    .click(function(){
        alert("this "+this.firstChild.nodeName+" is disabled");
    });