我正在尝试使用jQuery获取文本字段的值,但它无效。
以下是测试:
我在HTML中有这个:
<input type="text" id="user_time_zone_offset_hours" name="user_time_zone_offset_hours" value="7"/>
在JavaScript中,使用jQuery (这不起作用):
alert($('#user_time_zone_offset_hours').value); //Result is 'undefined'
在JavaScript中,不使用jQuery (这可行):
alert(document.getElementById("user_time_zone_offset_hours").value); //Result is 7
为什么jQuery返回'undefined'?
答案 0 :(得分:15)
jQuery将原始DOM对象包装在自己的对象中,因此无法直接访问.value
属性。
要获取原始DOM对象,可以将jQuery对象作为数组访问:
$('#user_time_zone_offset_hours')[0].value;
或者,jQuery提供了一种获取输入值的方法:
$('#user_time_zone_offset_hours').val();
答案 1 :(得分:1)
它不起作用,因为.value不是正确的调用。尝试使用.val() function。
alert($('#user_time_zone_offset_hours').val());
答案 2 :(得分:1)
尝试$('#user_time_zone_offset_hours').val()
。
答案 3 :(得分:1)
要获得值,请尝试
$('#user_time_zone_offset_hours').val()
您也可以使用
$('p').text()
获取段落元素的内部文本,或
$('#any_div').html()
获取任何元素的HTML内容。
text()
和html()
之间的区别在于,如果您使用text()
来设置HTML内容,例如
$("#and_div").text('<a href="example.com">Link</a>');
它会被逃脱
<a href="example.com">Link</a>
答案 4 :(得分:0)
您可以使用$('#user_time_zone_offset_hours').html()
。