从JQuery上的span值属性设置文本字段的值

时间:2012-07-24 00:43:38

标签: jquery html textfield

我有一个小问题,出于造型目的,我使用的是定义列表而不是组合框,在我的dd标签内,每个li里面都有一个ul,有一个span,带有一个value属性。我正在尝试将该值放在文本字段上,因此我可以在后期操作中使用它。这段代码在我的li的点击功能中:

var temp = $(this).find("span").attr("value");
$("#ch").val(temp);

我相信我的选择是正确的,因为当我记录temp的值时,它是我想要的那个,但是当我记录ch字段的值时,我得到了未定义。

我错过了什么? 提前致谢。

何。

2 个答案:

答案 0 :(得分:2)

$("#ch").val($(this).find("span").text());

但是,如果您确定temp具有正确的值(即使使用了错误的方法),那么您可能没有达到目标,是否确定该元素具有ID ch

答案 1 :(得分:1)

要知道,span元素没有value属性,除非您自己在标记中定义它。


实现目标的可能方法:

使用此:

$('#ch').val($(this).find('span').html());

或者:

$('#ch').val($(this).find('span').text());

在此内部:

$(selector).on('click', function() {
   $('#ch').val($(this).find('span').text());
});

undefined问题的可能解决方案:

  • 确保为要设置值的元素使用正确的ID。
  • 也许您的元素#ch位于DOM中,因此您需要使用.on()作为上述示例,而不仅仅是$(selector).click();