FormElement insertForm(Token.StartTag startTag, boolean onStack) { Tag tag = Tag.valueOf(startTag.name(), settings); FormElement el = new FormElement(tag, baseUri, startTag.attributes); setFormElement(el); insertNode(el); if (onStack) stack.add(el); return el; }
private void insertNode(Node node) { // if the stack hasn't been set up yet, elements (doctype, comments) go into the doc if (stack.size() == 0) doc.appendChild(node); else if (isFosterInserts()) insertInFosterParent(node); else currentElement().appendChild(node); // connect form controls to their form element if (node instanceof Element && ((Element) node).tag().isFormListed()) { if (formElement != null) formElement.addElement((Element) node); } }
/** * Prepare to submit this form. A Connection object is created with the request set up from the form values. You * can then set up other options (like user-agent, timeout, cookies), then execute it. * @return a connection prepared from the values of this form. * @throws IllegalArgumentException if the form's absolute action URL cannot be determined. Make sure you pass the * document's base URI when parsing. */ public Connection submit() { String action = hasAttr("action") ? absUrl("action") : baseUri(); Validate.notEmpty(action, "Could not determine a form action URL for submit. Ensure you set a base URI when parsing."); Connection.Method method = attr("method").toUpperCase().equals("POST") ? Connection.Method.POST : Connection.Method.GET; return Jsoup.connect(action) .data(formData()) .method(method); }
lentPage.select("input[name=" + media + "]").first().attr("checked", true); List<Connection.KeyVal> formData = ((FormElement) lentPage.select("form").first()).formData(); FormBody.Builder paramBuilder = new FormBody.Builder(); for (Connection.KeyVal kv : formData) { List<Connection.KeyVal> formData2 = confirmationForm.formData(); FormBody.Builder params2 = new FormBody.Builder(); for (Connection.KeyVal kv : formData2) { httpPost(opac_url + "/user/" + confirmationForm.attr("action"), params2.build(), getDefaultEncoding());
.build(); String postUrl = form.attr("abs:action");
((FormElement) doc.select("#opacVolumesForm").first()).formData(); List<NameValuePair> params = new ArrayList<>(); for (Connection.KeyVal kv : keyVals) {
Elements inputs = form.select("input"); Connection validForm = Jsoup.connect(token.validationUrl); validForm.followRedirects(false);
FormElement form = (FormElement) doc.select("form").first(); List<Connection.KeyVal> formData = form.formData(); FormBody.Builder paramBuilder = new FormBody.Builder(); for (Connection.KeyVal kv : formData) { doc = Jsoup.parse(httpPost(opac_url + "/user/" + form.attr("action"), paramBuilder.build(), getDefaultEncoding())); List<Connection.KeyVal> formData = confirmationForm.formData(); FormBody.Builder paramBuilder = new FormBody.Builder(); for (Connection.KeyVal kv : formData) { httpPost(opac_url + "/user/" + confirmationForm.attr("action"), paramBuilder.build(), getDefaultEncoding());
String postUrl = form.attr("abs:action");
FormElement insertForm(Token.StartTag startTag, boolean onStack) { Tag tag = Tag.valueOf(startTag.name()); FormElement el = new FormElement(tag, baseUri, startTag.attributes); setFormElement(el); insertNode(el); if (onStack) stack.add(el); return el; }
private void insertNode(Node node) { // if the stack hasn't been set up yet, elements (doctype, comments) go into the doc if (stack.size() == 0) doc.appendChild(node); else if (isFosterInserts()) insertInFosterParent(node); else currentElement().appendChild(node); // connect form controls to their form element if (node instanceof Element && ((Element) node).tag().isFormListed()) { if (formElement != null) formElement.addElement((Element) node); } }