Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/75.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
jquery无法更改内部html?_Jquery - Fatal编程技术网

jquery无法更改内部html?

jquery无法更改内部html?,jquery,Jquery,大家好,我是jquery的新手,在过去的几个小时里,我一直在努力解决这个问题。。。我到底做错了什么?我只想更改div的innerHTML $("left_menu_bar").innerHTML = "You clicked me!"; 但是当我用代码init调用函数时,div一点也没有改变。这样做: // referencing by id $("#left_menu_bar").html("You clicked me!"); // referencing by class name (

大家好,我是jquery的新手,在过去的几个小时里,我一直在努力解决这个问题。。。我到底做错了什么?我只想更改div的innerHTML

$("left_menu_bar").innerHTML = "You clicked me!";
但是当我用代码init调用函数时,div一点也没有改变。

这样做:

// referencing by id
$("#left_menu_bar").html("You clicked me!");
// referencing by class name ( will apply to all div's with this class )
$(".left_menu_bar").html("You clicked me!");

因为左菜单栏不是一个元素,所以不能这样选择它

如果是元素的ID,请尝试:

$("#left_menu_bar").html("You clicked me!");
$(".left_menu_bar").html("You clicked me!");
如果是元素的类,请尝试:

$("#left_menu_bar").html("You clicked me!");
$(".left_menu_bar").html("You clicked me!");

jQuery总是返回jQuery集合,而不是DOM元素。为了直接访问DOM属性,您需要从集合中检索一个元素:

$(".left_menu_bar").first().innerHTML = "You clicked me!";

但是,这并不十分方便,helmus的回答描述了通常的操作方式。

您试图在没有innerHTML属性的对象上为名为innerHTML的属性分配一些文本

jQuery中的$函数不返回DOM元素。它返回一个jQuery对象,该对象提供了在特定DOM元素集上执行所有出色jQuery函数的能力

jQuery对象公开的函数之一是.get,它将返回它所包含的元素之一

因此,在您的情况下,您可以:

// 0 means it will return the first element in the jQuery object
$("left_menu_bar").get(0).innerHTML = "You clicked me!";

或者,正如@helmus在他的回答中所说,您可以使用jQuery提供的.html函数来设置实际上在内部使用innerHTML的内容。

$left\u menu\u bar.htmlyou单击了我;天哪$%*我没想到这么快就能得到答案,我想这需要几天的时间!谢谢!!!!