我有一个带有文本框的表单,我想在成功进行ajax调用后将文本框的值提交到另一个页面,我该如何实现?
这是我的ajax方法:
$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
dataType: "json",
url: "http://test.net/getData",
data: "{some:data}",
success: function (response) {
document.forms.form1.txtData.value = "value1";
document.forms.form1.submit();
},
error: function (response) {
alert("error");
}
});
然后我将页面第1页中的表单作为:
<form id="form1" runat="server">
<input type="hidden" id="txtData" value="" runat="server" />
</form>
但是这会将我的数据发送回原始页面(Page1)而不是Page2表格。
答案 0 :(得分:2)
您可以在表单的action
属性中指定操作网址。
<form id="form1" runat="server" action="Page2.aspx">
<input type="hidden" id="txtData" value="" runat="server" />
</form>
答案 1 :(得分:2)
您可以使用查询字符串,这将使用您的textvalue
重定向到另一个页面success: function (response) {
var value=response.d
// document.forms.form1.txtData.value = "value1";
// document.forms.form1.submit();
window.location = "http://YourPageName.aspx?id="+value;
}
代码背后:
在页面加载时,您可以使用Request.QueryString
if (Request.QueryString["id"] != null)
{
string getTxtValue = Request.QueryString["id"].ToString();
}
答案 2 :(得分:1)
您可以将表单的“操作”属性设置为您需要的操作名称,然后提交表单,例如像这样。
success: function (response) {
var $form = $("#form1");
$form.attr("action", "your-action-name");
$form.submit();
},