在jquery中获取span标题

时间:2011-06-22 06:51:05

标签: jquery-ui

我想在以下html中检索范围标题。

<div id="header_customerid_d">
<div>
<span title="This is my span"></span>
</div>
</div>

我试过跟随jquery bt我得到了“未定义”警告。

var CustomerId = $('#header_customerid_d',this).children("div").children("span").attr("title");
alert(CustomerId);

所以请为我提供正确的解决方案。

谢谢, Bharat Mhatre

4 个答案:

答案 0 :(得分:6)

var CustomerId = $("#header_customerid_d span").prop("title");应该做到这一点。查看示例小提琴here

请注意,prop函数仅适用于jQuery 1.6+。如果您使用的是旧版本的jQuery,请改用attr

$("#header_customerid_d span").attr("title");

答案 1 :(得分:0)

<强>尝试:

$('div#header_customerid_d').find("span").attr("title");

See Here

如果div中有多个跨度,则必须使用jQuery.each()来获取每个。

答案 2 :(得分:0)

您不需要或希望在jQuery选择器调用中包含this

将您的代码更改为:

var CustomerId = $('#header_customerid_d').children("div").children("span").attr("title");
alert(CustomerId);

它会起作用。

或者,如果你想更简洁,那就像其他一些优秀的温柔人士一样建议!

伊恩。

答案 3 :(得分:0)

假设您不习惯使用id,您可以随时采用“订单”。

$('span')[0]

这段代码为您提供了您感兴趣的第一个span元素。但是,如果我稍微修改您的代码:

<div id="header_customerid_d">
<div>
<span id="sp_1" title="This is my span"></span>
</div>
</div>

查看更简单的jQuery中的id

$('#sp_1')[0].title

将返回您感兴趣的范围标题。网上有很多jQuery教程,但几乎所有教程都建议您为每个HTML元素添加id。这是你的朋友。

因此,代码变为:

var CustomerId = $('#sp_1')[0].title; alert(CustomerId);

当然,您可能会回来说“我不能控制所有HTML文档中”id“属性的分配,请给我一些别的东西!”。在那种情况下,

$('#header_customerid_d').children("div").children("span")[0].title

应该为您提供title属性。您也可以使用它是getter和setter,即

$('#header_customerid_d').children("div").children("span")[0].title = "blablabla" 

将标题设置为“blablabla”。