Jquery无法选择div

时间:2012-01-17 07:43:16

标签: jquery

<div id="contentChildren" class="frame">

<div id="icon_com.tms.cms.article.Article_fc7be680-c0a8c88d-1be20c00-e3a2814e">
 <a class="contentItem Article" href="http://localhost:9080/ekms/contentexplorer  /explorer.jsp?cn=contentExplorer.panel&et=openMenu&contentId=com.tms.cms.article.Article_fda4d360-c0a8c88d-ae8af400-e4f04255">
</div>

</div>

我有上面的HTML。我试图用jquery来选择里面的div。这是“icon_com.tms.cms.article.Article_fc7be680-c0a8c88d-1be20c00-e3a2814e”的div id

但似乎无法选择。我尝试使用

$("icon_com.tms.cms.article.Article_fc7be680-c0a8c88d-1be20c00-e3a2814e").html();

但它返回null。这是我使用的功能

function _clickMenu(){              
  var parent = $(this).parent();
  var name = $(this).attr("name");
  var id = parent.attr("id");
  id = id.substr(5);

  $.getJSON(this.href, function(data){

  });
  var icon = "#icon_"+id;

  var x = $("#icon_com.tms.cms.article.Article_fc7be680-c0a8c88d-1be20c00-e3a2814e");
  alert("x : " + x.html());

  return false;
}

任何人都可以帮助我吗?

3 个答案:

答案 0 :(得分:3)

我认为,因为选择器中有.,所以将它作为类选择器。 试试像

这样的东西
$('div[id="icon_com.tms.cms.article.Article_fc7be680-c0a8c88d-1be20c00-e3a2814e"]').html()

答案 1 :(得分:2)

我认为这会解决问题:

// instead of $(x), just use x.
alert("x : " + x.html());

x仍然是一个有效的jQuery对象,因此不需要另一个$()包装器。

编辑:

刚才意识到你也在使用'。'在身份证。对于有效的HTML甚至可能是好的,但jQuery使用点来选择类名。所以它会识别

$('#icon_com.tms.cms.article.Article_fda4d360-c0a8c88d-ae8af400-e4f04255')

作为选择器:id“icon_com”,类别为“tms”,“cms”,“article”,“Article_fda4d360-c0a8c88d-ae8af400-e4f04255”。

果然,这个片段有效:

<div id="icon_com" class="tms cms article Article_fda4d360-c0a8c88d-ae8af400-e4f04255">
    <a class="contentItem Article" href="http://localhost:9080/ekms/contentexplorer  /explorer.jsp?cn=contentExplorer.panel&et=openMenu&contentId=com.tms.cms.article.Article_fda4d360-c0a8c88d-ae8af400-e4f04255">lorem ipsum</a>
</div>

<script src="jquery.js"></script>
<script>
$(function(){
    var x = $("#icon_com.tms.cms.article.Article_fda4d360-c0a8c88d-ae8af400-e4f04255");
    alert("x : " + x.html());
});
</script>

+1也是xdazz的观点。

答案 2 :(得分:1)

1.您的HTML没有ID为icon_com.tms.cms.article.Article_fc7be680-c0a8c88d-1be20c00-e3a2814e的div。

2. $("icon_com.tms.cms.article.Article_fc7be680-c0a8c88d-1be20c00-e3a2814e")错了,错过#

3

var x = $("#icon_com.tms.cms.article.Article_fc7be680-c0a8c88d-1be20c00-e3a2814e");
alert("x : " + $(x).html());

也错了,只是x.html()