jquery - jquery中如何通过名称获取表单元素?

标签 jquery

我有这个表格

var sformElem = $('form[name="search_form"]')[0];

我可以通过以下方式访问名称为“fieldname”的表单元素

var inputField = sformElem.fieldname;

    if (inputField) {  // true
    alert("this is true"); 
    } 

但是当我尝试使用 jquery 的 val() 方法访问该值时,javascript 崩溃了。

inputField.val() 未定义。

但执行inputField.value会返回值

为什么 val() 方法不起作用? 我哪里出错了? 另外,请建议最合适的按名称访问表单元素。

我知道的一种方法是

$("#form2 input[name=name]")

但在这里我们通过 id 获取表单并通过名称获取输入字段。

我想按名称获取表单和表单元素。

最佳答案

为什么 val() 方法不起作用?

inputField.val() 返回“未定义”,因为 inputField 是 DOM 元素而不是 jQuery 对象。 DOM 元素没有 val() 方法。所以错误是正确的。

您需要将其转换为 jQuery 对象。喜欢

$(inputField).val()

我想按名称获取表单和表单元素。

var elem = $('form[name="search_form"] input[name=name]');

关于jquery - jquery中如何通过名称获取表单元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24781670/

相关文章:

android - 图片未显示在 Phone Gap 应用程序中

javascript - 使用 XML 和 Javascript/Jquery 填充页面,检查 url 是否与 xml 标记相同

javascript - slideDown 菜单栏向下滑动其他文档

javascript - 在html中更改标签宽度

javascript - 在 jQuery 中选择单独按钮的最有效方法?

php - 以 jQuery Ajax 表单提交的错误字符集

javascript - 使用 AJAX 加载图像时出现问题

jquery - 显示节点树

javascript - 如何从文档中提取 QUnit 结果

javascript - 查找并选择文本中的非英文字符