Javascript 为什么jQuery函数返回null?
我有以下表格:Javascript 为什么jQuery函数返回null?,javascript,jquery,Javascript,Jquery,我有以下表格: <form action="javascript:;" class="iceFrm" enctype="application/x-www-form-urlencoded" id="frmMainMenu" method="post" onsubmit="return false;"> ..... </form> 更新2: 我忘了提到这个跨度在一个菜单中,所以基本上它是正常隐藏的,只有在悬停在某个分区上时才会显示。。。即使未显示jQuery也能找到它吗
<form action="javascript:;" class="iceFrm" enctype="application/x-www-form-urlencoded" id="frmMainMenu" method="post" onsubmit="return false;">
.....
</form>
更新2:
我忘了提到这个跨度在一个菜单中,所以基本上它是正常隐藏的,只有在悬停在某个分区上时才会显示。。。即使未显示jQuery也能找到它吗
你知道为什么吗?在你的问题更新后更新:
$('#frmMainMenu\3AmenuPopupAP\3AmenuItem0\3Aout').css('padding','0 0 0 29px');
您不能在选择器中使用:
,但可以使用十六进制等效值-\3A
在这方面几乎没有其他解决办法
您是否正在尝试搜索
frmMainMenu
的子项?请尝试以下方法:
$(document).ready(function () {
$("#frmMainMenu").find("#menuPopupAP")
.find("#menuItem0")
.find("#out")
.css('padding','0 0 0 29px');
});
更新问题更新后:
$('#frmMainMenu\3AmenuPopupAP\3AmenuItem0\3Aout').css('padding','0 0 0 29px');
您不能在选择器中使用:
,但可以使用十六进制等效值-\3A
在这方面几乎没有其他解决办法
您是否正在尝试搜索
frmMainMenu
的子项?请尝试以下方法:
$(document).ready(function () {
$("#frmMainMenu").find("#menuPopupAP")
.find("#menuItem0")
.find("#out")
.css('padding','0 0 0 29px');
});
不是那样的,是其中一个孩子是空的。您需要将脚本更改为以下内容
<script type="text/javascript">
$(document).ready(function () {
$("#frmMainMenu #menuPopupAP #menuItem0 #out").css('padding','0 0 0 29px');
});
</script>
$(文档).ready(函数(){
$(“#frmMainMenu#menuPopupAP#menuItem0#out”).css('padding','029px');
});
不是这样-是其中一个子项为空。您需要将脚本更改为以下内容
<script type="text/javascript">
$(document).ready(function () {
$("#frmMainMenu #menuPopupAP #menuItem0 #out").css('padding','0 0 0 29px');
});
</script>
$(文档).ready(函数(){
$(“#frmMainMenu#menuPopupAP#menuItem0#out”).css('padding','029px');
});
你肯定不是每次都想使用#(否则你可以直接使用#out,但听起来应该是这样的
$(“#frmMainMenu.menuPopupAP.menuItem0.out”).css(…您肯定不是每次都想使用#(否则您可以直接使用#out,但听起来应该是这样的)
$(“#frmMainMenu.menuPopupAP.menuItem0.out”).css(…我不清楚为什么会出现空错误,但如果您的目的是将该样式应用于这四个特定元素,那么语法应该是:
$("#frmMainMenu, #menuPopupAP, #menuItem0, #out").css('padding','0 0 0 29px');
如果这四个元素是层次结构中的连续节点(即,\out
是的子元素,menuItem
是的子元素,menuPopupAp
是的子元素,那么请删除它们之间的逗号
编辑id中的冒号?这会导致jQuery选择器出现问题。请尝试使用下划线?我不清楚为什么会出现空错误,但如果您希望将该样式应用于这四个特定元素,则语法应为:
$("#frmMainMenu, #menuPopupAP, #menuItem0, #out").css('padding','0 0 0 29px');
如果这四个元素是层次结构中的连续节点(即,\out
是的子元素,menuItem
是的子元素,menuPopupAp
是的子元素,那么请删除它们之间的逗号
编辑id中的冒号?这将导致jQuery选择器出现问题。请尝试使用下划线来代替?您可以发布需要完成的操作吗?
从选择器中,我认为您正在采用硬选择器方法与DOM进行交互。您可以发布您需要完成的任务吗?
从选择器中,我认为您正在采用硬选择器方法与DOM交互。
您需要使用[id=“value”]
语法,因为在jQuery选择器中,:
可以用作选择器,因此它没有意识到id可以包含它们。
您需要使用[id=“value”]
语法,因为在jQuery选择器中,:
可以用作选择器,因此它没有意识到id可以包含它们。您可以发布整个表单吗?$(…)
的结果没有另一个属性$(…)
$(“\frmMainMenu”)。$(“\frompap>”)$(“#menuItem0”).$(“#out”)
不正确。你到底想做什么?我已经更新了我的帖子,可能我试图找到这些元素的方式是错误的…你能发布整个表单吗?$(…)
的结果没有另一个属性$(…)
$(“#frmMainMenu”).$(“#MENUPOUPPAP”).$(“#menuItem0”)($)(“out”)
不正确。你到底想做什么?我已经更新了我的帖子,也许我试图找到这些元素的方法是错误的…$(“#frmMainMenu:menupopupapap:menuItem0:out”)
实际上不起作用,因为jQuery使用:
作为选择器。@Rocket-是的,我意识到了。谢谢。更新我的答案。$(“#frmMainMenu:MenuPoupPap:menuItem0:out”)
实际上不起作用,因为jQuery使用:
作为选择器。@Rocket-是的,我意识到了。谢谢。更新我的答案。ID可以包含冒号,这是有效的,但jQuery不能选择带有冒号的ID,因为:
是作为选择器读取的。您需要执行[id=“value”]
相反。id可以包含冒号,这是有效的,但是jQuery不能选择带有冒号的id,因为:
是作为选择器读取的。您需要执行[id=“value”]
相反。很奇怪,它仍然给我空值…请注意,上面的id取自Firebogu,所以基本上是所有父组件的合成id…@Cristian:你说的“合成id”是什么意思"?我的意思是它需要所有家长的id,并显示结果:在id之间…@Cristian:我不知道Firebug会这样做。谢谢!你的解决方案成功了,我还需要用jQuery替换$。很奇怪,它仍然给我空值…请注意,上面的id来自Firebogu,所以基本上它是所有家长的组合idComponents…@Cristian:你说的“组合id”是什么意思?我的意思是它需要所有家长的id,并显示结果:id之间…@Cristian:我不知道Firebug会这样做。谢谢!你的解决方案成功了,我还需要用jQuery替换$。