如何使用javascript

时间:2015-06-08 07:09:07

标签: javascript c# jquery asp.net webforms

我有一个带有文本框的表单,我想在成功进行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表格。

3 个答案:

答案 0 :(得分:2)

您可以在表单的action属性中指定操作网址。

请查看documentation

<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();
},

About HTML action Attribute