1

我的html代码:

<li id='category-10'>
<label class="selectit">
<input value="10" type="checkbox" name="post_category[]" id="in-category-10" /> Developmental
</label>
</li>

我的 JavaScript 代码:

function onCategoryClick() {
 $(".selectit").click(function(e){
    var categoryValue = $(e.target).text();
    alert("The value is " + categoryValue);
 });
}

这将返回字符串“值是发展性的”,但我想要的是“值是 10”我是 Javascript 新手,我将如何定位输入中的值字段,而不是文本?

我也试过

var categoryValue = $(e.target > input).value;

但这不会返回任何东西。

4

1 回答 1

1

代替

$(e.target).text();

尝试

$(this).find('#in-category-10').val();

这里e.target对应label. 它有文本'Developmental'和一个嵌套的输入元素。所以你需要使用 find 来访问它。(如果没有id)

ID应该在页面上是唯一的。因此,要访问元素,您可以直接使用 id 选择器

var categoryValue = $('#in-category-10').val();

请记住,输入没有text属性。需要使用的val方法

于 2013-08-01T23:29:10.283 回答