首页 > 解决方案 > 将值从 URL 参数传输到 asp:TextField

问题描述

我想完成这样的事情

https://localhost/startsignatureppanel.aspx?StaffID=[这里的员工ID值]

现在这是我的问题,例如,我想从这个 URL 传递来自这个 URL 的人员 ID 的值

https://localhost/startsignatureppanel.aspx?StaffID=1002829

并让它显示在文本框中。它没有把代码放在那里

我的代码看起来像这样

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="startsignatureprocess.aspx.cs" Inherits="MYSignatureAccess.startsignatureprocess" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>

    <script runat="server">
        string mystaffID;
        protected void Page_Load(object sender, EventArgs e)
        {
            mystaffID = "";
            if (IsPostBack)
            {
                mystaffID = Convert.ToString(Request.QueryString["StaffID"]);
                StaffID.Text = mystaffID;
            }
        }
    </script>            

    <body>

        <form id="form1" method="get" runat="server">
            <asp:TextBox ID="StaffID"  runat="server"></asp:TextBox>
        </form>

     </body>
</html>

标签: c#asp.netwebforms

解决方案


你需要改变:

if (IsPostBack)
{
    mystaffID = Convert.ToString(Request.QueryString["StaffID"]);
            StaffID.Text = mystaffID;
}

至:

if (!IsPostBack) //You need is not postback, otherwise you never execute the if as your code is now.
{
    mystaffID = Convert.ToString(Request.QueryString["StaffID"]);
            StaffID.Text = mystaffID;
}

希望 tis 有所帮助。


推荐阅读