为了账号安全,请及时绑定邮箱和手机立即绑定

在触发来自代码隐藏的页面加载事件之前,如何在页面加载时将会话存储值传递到文本框中

在触发来自代码隐藏的页面加载事件之前,如何在页面加载时将会话存储值传递到文本框中

幕布斯6054654 2022-07-08 18:04:38
我有一个 Javascript 函数,它在 form1 的 localstorage 中存储一个 Idnumber,并在加载时将 localstorage 数据检索到 form2 上的文本框中。一切正常,但在 form2 上,我还有一个代码隐藏,它必须使用文本框 OnPageload 事件中的 ID 号从 SQL 数据库中选择数据,但它不起作用。所以我意识到当 from2 被加载时,代码隐藏(onpageload)事件在 Javascript 之前首先被触发,该 Javascript 假设将 Idnumber 放入文本框中。请我被卡住了,我不知道该怎么做,任何帮助将不胜感激。问题是我需要在服务器端代码被触发之前触发 java 脚本以将 Idnumber 加载到文本框中这是我在 form1 上的 javascript    $(document).on("click", ".Laundry-Cont", function () {        var classval =  $(this).children("input").val();       // var getInput = prompt("Hey type something here: ");     sessionStorage.setItem("storageName", classval);       $(document.getElementById('<%=mnn.ClientID%>')).val(sessionStorage.getItem("storageName"));      //  window.onload = alert(localStorage.getItem("storageName"));      //$('#mn').val(localStorage.getItem("storageName"));        window.location.href = '/proudctselection.aspx'    }); //this is my script on form2 $(document.getElementById('<%=txtpicproductid.ClientID%>')).val(sessionStorage.getItem("storageName"));   });  //this is my SQL query on form2 in codebehind    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load    If cn.State = ConnectionState.Open Then        cn.Close()    End If    Dim selproduct As New SqlCommand("SELECT *FROM allproducts WHERE ItID = @productid")    selproduct.Connection = cn    selproduct.Parameters.AddWithValue("@productid", SqlDbType.BigInt).Value = iidd    Dim selproductda As New SqlDataAdapter(selproduct)    Dim selproductdt As New DataTable    selproductda.Fill(selproductdt)    For Each rw As DataRow In selproductdt.Rows        Me.productmainimage.ImageUrl = rw.Item(6).ToString    Next    cn.Close()   End Sub
查看完整描述

1 回答

?
紫衣仙女

TA贡献1839条经验 获得超15个赞

这不起作用,因为页面必须在显示 JavaScript 之前完全加载,因此您无法在页面加载事件之前运行 JavaScript。

您可以通过几种不同的方式将 ID 传递给表单 2:

  • 通过加载页面上的 Request.Form 发布值并检索

  • 使用表单 1 完成后通过 QueryString 传递 .. 只需使用 Querystring 值直接转到下一个表单

  • 将 ID 加载到 cookie 并通过 Request.Cookies 拉取

  • 根据数据要求和显示使用 AJAX / WebAPI / WebMethod 和 JavaScript 在页面加载后加载必要的数据。

  • 使用会话状态

  • 在源页面中创建公共属性并访问目标页面中的属性值

  • 从源页面中的控件获取目标页面中的控件信息

可能还想查看更多提示和想法: 从另一个页面获取价值


查看完整回答
反对 回复 2022-07-08
  • 1 回答
  • 0 关注
  • 96 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信