我有这个表格
var sformElem = $('form[name="search_form"]')[0];
Run Code Online (Sandbox Code Playgroud)
我能够访问名称为'fieldname'的表单元素
var inputField = sformElem.fieldname;
if (inputField) { // true
alert("this is true");
}
Run Code Online (Sandbox Code Playgroud)
但是当我试图使用jquery的val()方法访问该值时,javascript崩溃了.
inputField.val()未定义.
但是输入inputField.value会返回值
为什么val()方法不起作用?我哪里弄错了?另外,请建议最合适的按名称访问表单元素.
我所知道的一种方法是
$("#form2 input[name=name]")
Run Code Online (Sandbox Code Playgroud)
但是这里我们通过id和输入字段按名称获取表单.
我希望按名称获取表单和表单元素.
为什么val()方法不起作用?
inputField.val()返回"未定义"因为inputField是DOM元素而不是jQuery对象.DOM元素没有val()方法.所以错误是正确的.
您需要将其转换为jQuery对象.喜欢
$(inputField).val()
Run Code Online (Sandbox Code Playgroud)
我希望按名称获取表单和表单元素.
var elem = $('form[name="search_form"] input[name=name]');
Run Code Online (Sandbox Code Playgroud)