我无法使用jsoup获取表单的ID(或名称)。例如...... html代码是:
<form name="input" action="demo_form_action.asp" method="get">
Username: <input type="text" name="user">
<input type="submit" value="Submit">
</form>
我使用以下代码提取表单的html代码,但是如何获取名称?
Elements tds = doc.getElementsByTag("form");
谢谢!
答案 0 :(得分:0)
试试这个
var tds =document.getElementsByTagName("form");
console.log(tds[0].getAttribute("name"));
<强> FIDDLE 强>
答案 1 :(得分:0)
这段代码说明了如何获取元素的id,元素名称(=标记)或元素的属性。 (在你的问题中你不清楚你想要什么,因为你谈到获取id或名称,你的html也包含一个属性'name')
String html = "<form name=\"input\" action=\"demo_form_action.asp\" method=\"get\">\n" +
" Username: <input type=\"text\" name=\"user\">\n" +
" <input type=\"submit\" value=\"Submit\">\n" +
" </form>";
org.jsoup.nodes.Document doc = Jsoup.parse(html);
Elements forms = doc.getElementsByTag("form");
for (Element form : forms) {
System.out.println(form.id());
System.out.println(form.tag());
Attributes attributes = form.attributes();
for (Attribute attribute : attributes) {
System.out.println(attribute.toString());
}
}
答案 2 :(得分:0)
首先,您必须考虑在网页中可以找到多个表单。
执行命令:
Elements tds = doc.getElementsByTag("form");
在tds中存储包含表格的所有Dom节点的集合(即有序集合)。
此集合可以为空,只有一个元素,或者有多个元素。
因此,不清楚您是否需要特定表单的名称,或者您想获取网页中存在的所有alla表单名称的列表。 请澄清。