我的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);
});
}
这会返回字符串“The value is Developmental”,但我想要的是“The value is 10” 我是 Javascript 新手,我该如何定位输入中的值字段而不是文本?
我也尝试过
var categoryValue = $(e.target > input).value;
但这不会返回任何内容。
最佳答案
而不是
$(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
方法
关于javascript - 使用 Javascript 从输入中获取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18006323/