Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/449.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 全局函数未执行_Javascript_Jquery - Fatal编程技术网

Javascript 全局函数未执行

Javascript 全局函数未执行,javascript,jquery,Javascript,Jquery,我的脚本创建了一个div,并添加了一个函数,可以在单击时删除这个div,但它不起作用 function del(el) { $("#"+el).remove(); } function create() { var element = document.createElement("div"); var att = document.createAttribute("onclick"); att.value = "del(this.id)"; el

我的脚本创建了一个div,并添加了一个函数,可以在单击时删除这个div,但它不起作用

function del(el) {
   $("#"+el).remove();
}


function create() {
    var element = document.createElement("div");
    var att = document.createAttribute("onclick"); 
    att.value = "del(this.id)";  
    element.setAttributeNode(att); 
    $(element).attr('id', "someID");
    document.getElementById("someContainer").appendChild(element);
}   
是的,是的,我知道这不是添加函数的最佳方式,但我想这样做。 仅供参考-执行
create()
后,DIV显示良好。我检查了它,它确实有正确的ID和
onclick=“del(this.ID)”
属性,但单击它后什么也没有发生。我反复检查并在onclick属性中添加了
alert(“我正在工作”)
,这就成功了。我没有收到任何错误。过去,
.remove()
工作正常,但现在不行(可能是因为我这次添加函数的方式)


编辑:当单击div时,
del()
似乎没有执行。

您已经用jQuery发布了这个,但是您显示的大部分是香草。至于你最初的问题

函数del(el){
$(“#”+el).remove();
}
函数create(){
var元素=document.createElement(“div”);
var att=document.createAttribute(“onclick”);
att.value=“del(this.id)”;
元素setAttributeNode(att);
$(element.attr('id','someID');
document.getElementById(“someContainer”).appendChild(元素);
$(element.html('DIV CREATED!').css('background-color',String.randColorHex());
}
创建()
#someContainer>div{高度:10em;宽度:100%;}


请发布您的“HTML”。。。并设置一个小提琴来重新创建问题
函数del()
中的
el
是什么?如果传入的是实际id,则您可能正在尝试访问字符串值的
id
属性。很可能,.remove不起作用。多做一点调试。您正在做一些错误的事情(除了糟糕的编码实践之外),这在您提供的代码中并不明显。请在您的问题中包含足够的信息,以便重新创建问题。@SpYk3HH:最好将非答案发布为评论(如果有的话)以获得投票。发布您最喜欢的jQuery解决方案并不能解决问题……即使在编辑之后,它仍然只是一个“对我有用”的答案。@SpYk3HH“编辑:单击div时似乎没有执行del()。“哦,不,听起来像是使用了警报,但
del
没有。这表明
del
是在全局之外的某个地方定义的。问题完全存在于其他地方,我解决了它。由于你们提供的所有信息,我将此答案标记为已接受,我需要关闭此操作。谢谢。