我正在尝试在jQuery中获取表单数据,我尝试了以下两种方法:
var form = document.getElementById('user_form'); //By using form id
var form = document.getElementsByTagName('form'); //By form tag name
第一个以下列格式给出结果:
<form id="user_form" action="/users/create_user" method="post">
// ...
</form>
这没关系,但是当我尝试第二种方法时,它会以对象的形式返回结果。
[form#user_form, user_form: form#user_form]
但我正在寻找第一种方法返回的相同格式的结果。
答案 0 :(得分:3)
getElementsByTagName
返回标记名称的satisties节点列表。
您可以应用索引来获取单个元素。
var forms = document.getElementsByTagName('form'); //By form tag name
var form = forms[0];
答案 1 :(得分:1)
您可以轻松使用jquery选择器通过索引来访问所需的节点。以下是vanilla和jquery的示例:
var htmlFormById = $("#user_form")[0];
console.log("htmlFormById",htmlFormById);
var htmlFormByTag = $("form")[0];
console.log("htmlFormByTag",htmlFormByTag);
var formById = document.getElementById('user_form');
console.log(formById);
var formByTag = document.getElementsByTagName('form')[0];
console.log(formByTag);
以下是小提琴中的工作解决方案:https://jsfiddle.net/toc3ej6s/1/
答案 2 :(得分:0)
var InnerHtml = document.getElementById("wrapper").innerHTML
InnerHtml = serialize(document.forms[0]); //Serialized Form Data
上找到了
希望这有助于。
答案 3 :(得分:0)
getElementsByTagName()方法返回文档中具有指定标记名称的所有元素的集合
document.getElementsByTagName('form')