有什么技巧可以让这个功能发挥作用吗?
我希望通过以下方式在按钮单击和 POST 参数时将页面提交给 test.aspx:
我的 html
<a href="javascript:void(0);" onclick="return submittotest();"><span>Click me</span></a>
js
function submittotest() {
$.post("test.aspx", { param: "paramvalue" });
}
有什么技巧可以让这个功能发挥作用吗?
我希望通过以下方式在按钮单击和 POST 参数时将页面提交给 test.aspx:
我的 html
<a href="javascript:void(0);" onclick="return submittotest();"><span>Click me</span></a>
js
function submittotest() {
$.post("test.aspx", { param: "paramvalue" });
}
试试这个,它会使用所需的参数向 test.apsx 页面提交一个不可见的表单。
<form id="formToSubmit" action="test.apsx" method="post" style="display:none;">
<input type="hidden" name="param" value="paramValue"/>
</form>
<a href="#" onclick="$('#formToSubmit').submit();">Submit the page</a>
如果要提交表单,则需要执行$('#formid').submit();
. 您上面的内容是针对 AJAX 请求的。如果您想对返回的数据执行某些操作,则需要将成功回调函数传递给 post 函数。
示例:请参见此处
HTML
<button id="testbtn">button</button>
<div id="testdiv"></div>
JavaScript
$(function() {
$('#testbtn').click(function() {
$.post('/echo/html/', //This just echo's the html parameter's value back
{ html: "Just testing!" },
function(text) {
$("#testdiv").html(text);
});
});
});
根据您的评论进行编辑。您可以使用 jquery 将具有所需值的隐藏输入元素添加到表单中。尝试这样的事情:
var yourdatavar = "data you want to post";
$('<input type="hidden">').val(yourdatavar).appendTo('#formid');
$('#formid').submit();
查看此示例以获取工作示例。