我正在尝试使用jQuery获取文本字段的值,但它无法正常工作.
以下是测试:
我在HTML中有这个:
<input type="text" id="user_time_zone_offset_hours" name="user_time_zone_offset_hours" value="7"/>
Run Code Online (Sandbox Code Playgroud)
在JavaScript中,使用jQuery(这不起作用):
alert($('#user_time_zone_offset_hours').value); //Result is 'undefined'
Run Code Online (Sandbox Code Playgroud)
在JavaScript中,不使用jQuery(这是有效的):
alert(document.getElementById("user_time_zone_offset_hours").value); //Result is 7
Run Code Online (Sandbox Code Playgroud)
为什么jQuery返回'undefined'?
Dav*_*ang 15
jQuery将原始DOM对象包装在自己的对象中,因此.value无法直接访问该属性.
要获取原始DOM对象,可以将jQuery对象作为数组访问:
$('#user_time_zone_offset_hours')[0].value;
Run Code Online (Sandbox Code Playgroud)
或者,jQuery提供了一种获取输入值的方法:
$('#user_time_zone_offset_hours').val();
Run Code Online (Sandbox Code Playgroud)