0

很抱歉问这个简单的问题,但我被卡住了,为什么这个 jquery 没有取值,它正在警告空消息。

我的jQuery:

$(function(){
  $('dt').on('click',function(){
     alert($(this).val());
  });
});

我的html:

<dl>
<dt>test</dt>
<dd>- test</dd>
</dl>

我期待它提醒test消息。但它在没有消息的情况下发出警报。$(this).val()一定是对的,我想。感谢您的帮助和指导..

4

2 回答 2

3

.val() 用于输入元素,您需要使用 .text()

alert($(this).text());

or

alert($(this).html()); // Careful, since it will include markup (obviously)
于 2013-02-19T23:05:19.613 回答
3

这是因为val()value输入字段的属性有关。 <dt>不是输入字段。尝试做

$(function(){
  $('dt').on('click',function(){
     alert($(this).text());
  });
});
于 2013-02-19T23:06:26.313 回答