1

html

<span class="checkbox" GroupName="ckmill">
<input id="ctl01" type="checkbox" name="ctl01" />
<label for="ctl01">A</label></span>

js

 $(document).ready(function() {
        $('.checkbox').click(function(){
            var  $text2=$(this);

            alert($text2.attr("text"));
        });
    });​

执行时显示..UNDEFINED

解决办法是什么?

4

4 回答 4

0

如果您想要跨度的文本内容:

alert($text2.text());

没有“文本”属性可用作选择器。如果您想要跨度的 HTML 内容,请使用:

alert($text2.html());
于 2012-08-06T03:26:16.387 回答
0

text 不是 HTML 标签的属性,您必须使用$text2.text().

属性是在标签内定义的东西,例如href在锚标签 ( <a href="website.com"></a>) 或id几乎任何标签 ( <div id="hello">Text</div>) 中。

要获取属性idhello(即“文本”)的 div 内的文本,则必须使用.text().

alert($text2.text());

或获取 HTML 内容

alert($text2.html());
于 2012-08-06T03:31:11.173 回答
0

Dmeo:http: //jsfiddle.net/LuRqK/

2件事:

1)获取内部输入的属性使用children http://api.jquery.com/children/

2)获取文本或html使用.text.htmlapi

代码

 $(document).ready(function() {
        $('.checkbox').click(function(){
            var  $text2=$(this);
             alert($text2.text());
            alert($text2.children('#ctl01').attr('name'));
        });
    });​
于 2012-08-06T03:31:51.547 回答
0

该对象似乎没有任何属性“文本”。你应该使用

alert($text2.html());

或者

alert($text2.text());
于 2012-08-06T03:34:52.720 回答