我有一个关于表单操作的基本问题。
这里考虑下面的代码,如果有的话就忽略语法。
<form action="demo_form.asp" method="get">
<a href="test.asp">Code testing</a>
First name: <input type="text" name="fname" /><br />
Last name: <input type="text" name="lname" /><br />
<button type="submit">Submit</button><br />
</form>
提交表单时调用demo_form.asp,我可以在demo_form.asp中处理表单中的变量,如下所示,
request.GET('fname')
通过HREF调用test.asp时如何处理表单中的变量..是否可以使用相同的GET或POST方法?
最佳答案
通过超链接提交数据的唯一方法是通过 GET 请求。这当然会涉及表单中的所有字段,而不是作为查询参数添加到超链接。
您当然可以修改 a
元素,使其使用 onclick 处理程序和 JavaScript 来使用 DOM 方法从您的表单中获取数据,动态修改 href 属性,然后触发点击该特定 anchor 标记的事件。这也是一个 GET 请求。
HTML:
<form action="test.asp" id="theForm">
<a href="test.asp?" id="link">Code testing</a>
First name: <input type="text" name="fname" /><br />
Last name: <input type="text" name="lname" /><br />
</form>
jQuery:
$('#link').click(function() {
var href = "";
$('#theForm > input').each(function(event) {
event.preventDefault();
href = $('#link').attr("href") + "&" +
$(this).attr("name") + "=" + $(this).attr("value");
$('#link').attr("href", href);
});
$(this).click(); // or window.location = $(this).attr("href");
});
除了作为学习更多有关 DOM 和浏览器处理事件的方式的练习之外,我不确定这会给您带来什么值(value)。
如果不知道您想要完成什么,就很难知道为什么您不只是使用表单本身。
关于html - 表单操作——调用 HREF 时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10508923/