function remove() {
debugger;
alert('sahd');
}

<div style="padding-top:8px;padding-left:5px;border:solid;border-color:black;border-width:thin;width:350px;height:75px;" id="divv">
<label>Abcd1</label>
<input type="button" onclick="remove(); return false;" />
<label>Abcd1</label>
<input type="button" onclick="remove(); return false;" />
<label>Abcd1</label>
<input type="button" onclick="remove(); return false;" />
</div>
&#13;
//javascript code
function remove() {
debugger;
alert('sahd');
}
上面是我的html代码和javascript函数。当我点击按钮时,它们会继续消失。
请帮忙
答案 0 :(得分:2)
这是一个不幸的命名事情。如果您将功能名称更改为foo
(或其他)而不是remove
,则它将停止发生(请参阅下文)。
onXyz
处理程序运行的环境是复杂的, 一个 的复杂性是您的onXyz
代码有效运行使用元素的with
语句:
with (theElement) {
// your code
}
还有更多,但这是它的一个方面。
在现代浏览器中,元素具有remove
方法,可将其从DOM中删除。这就是所谓的,而不是全球 remove
功能。
使用foo
的示例,因此它与元素remove
方法的名称不同:
function foo() {
alert('sahd');
}
&#13;
<div style="padding-top:8px;padding-left:5px;border:solid;border-color:black;border-width:thin;width:350px;height:75px;" id="divv">
<label>Abcd1</label>
<input type="button" onclick="foo(); return false;" />
<label>Abcd1</label>
<input type="button" onclick="foo(); return false;" />
<label>Abcd1</label>
<input type="button" onclick="foo(); return false;" />
</div>
&#13;
这是使用现代事件处理技术而不是onXyz
处理程序的众多原因之一。另一个是使用onXyz
处理程序,你的函数必须是全局的,但全局命名空间已经方式过于拥挤,你最终可能会遇到不幸的冲突。借助现代技术(IE8及更低版本的addEventListener
或attachEvent
),您可以更好地控制处理程序运行的环境,而且他们不必是全局变量。
答案 1 :(得分:1)
因为您正在调用remove()
javascript函数。
参考:W3Schools
只需将function remove()
更改为function xyz()
function xyz() {
debugger;
alert('sahd');
}
&#13;
<div style="padding-top:8px;padding-left:5px;border:solid;border-color:black;border-width:thin;width:350px;height:75px;" id="divv">
<label>Abcd1</label>
<input type="button" onclick="xyz(); return false;" />
<label>Abcd1</label>
<input type="button" onclick="xyz(); return false;" />
<label>Abcd1</label>
<input type="button" onclick="xyz(); return false;" />
</div>
&#13;
答案 2 :(得分:0)
您还可以使用锚标记并使用css将设计作为按钮。你只需要做如下
<a href="javascript:remove()" id="my button" >test</a>
这也可以是另一种选择。
希望这会有所帮助。