使用 Ajax/JQuery/C# 将 URL 参数从子页面传递回主页

本文关键字:回主页 参数 JQuery Ajax URL 使用 | 更新日期: 2023-09-27 18:36:06

Page1.aspx 有一个 span 元素 "class1",它触发 Ajax 请求的 ".click" 事件,由 Page2.aspx 处理。Page2.aspx 使用"class2"呈现另一个 span 元素。单击"class2"将触发在Page3.aspx上定义的另一个Ajax请求。

问题是,我如何让 Page1.aspx 获取 otherid 参数,以便我可以处理它?所有结果都呈现回 #results。

我一开始就这样做对吗???

页 1.aspx (HTML):

<html>
<head>
<script type="text/javascript">
  $(document).ready(function () {
    $('.class1').click(function () {
      $.ajax({
        contentType: "text/html; charset=utf-8",
        //detect span "class2" was clicked and append to url here?
        //data: "id=" + this.id + ",anotherid=" + ???
        data: "id=" + this.id,
        url: "Page2.aspx",
        dataType: "html",
        success: function (data) {
          $('#results').html(data);
        }
      });
    });
  });
</script>
</head>
<body>
  <div><span class="class1" id="123">Click</span></div>
  <div id="results"></div>
</body>
</html>

第 2 页.aspx(代码隐藏):

protected void Page_Load(object sender, EventArgs e)
{
  string id = Request.QueryString["id"];
  Response.Write("<span class='"class2'" id="456">" + id + "</span>");
}

页 2.aspx (HTML):

<html>
<head>
<script type="text/javascript">
  $(document).ready(function () {
    $('.class2').click(function () {
      $.ajax({
        contentType: "text/html; charset=utf-8",
        data: "anotherid=" + this.id,
        url: "Page3.aspx",
        dataType: "html",
        success: function (data) {
          $('#results').html(data);
        }
      });
    });
  });
</script>
</head>
<body>
</body>
</html>

第 3 页.aspx(代码隐藏):

protected void Page_Load(object sender, EventArgs e) 
{
  string tags = Request.QueryString["anotherid"];
  //do something with anotherid.
}

使用 Ajax/JQuery/C# 将 URL 参数从子页面传递回主页

请参阅此代码:

     $.ajax({
        type: "POST",
        url: "PageX.aspx?anotherid=" + $(this).attr("id"),
        success: function (data) {
          $('#results').html(data.text());
        }
      });

希望对您有所帮助!