将文本框值作为链接和参数传递给另一个web表单

本文关键字:参数传递 另一个 web 表单 链接 文本 | 更新日期: 2023-09-27 18:06:57

我试图从我的webform1发送电子邮件,一旦创建了一个新的工作订单,但是当用户单击工作订单编号时,我希望该工作订单编号作为参数传递给webform2。我用来发送电子邮件的代码:

System.Net.Mail.MailMessage mm = new System.Net.Mail.MailMessage();
mm.From = new System.Net.Mail.MailAddress("some@some.com");//who send
mm.To.Add(new System.Net.Mail.MailAddress("some@gmail.com"));
mm.To.Add(new System.Net.Mail.MailAddress("some@some.com"));
mm.Subject = "WorkOrders Created With Type Safety";
mm.Body = "WorkOrderNumber" + ":  " 
+ "<a href='"http://localhost:49695/Safety.aspx?=WorkOrderNum='">" 
+ TextBox13.Text + "</a>" 
+ "<-Click on the Work Order Number" + "<br><br/>" 
+ "Requestor" + ":&nbsp;" + TextBoxRequestor.Text 
+ "<br><br/>" + "Date" + ":&nbsp;" + TextBoxDate.Text 
+ "<br><br/>" + "Department" + ":&nbsp;" + TextBoxDepartment.Text
+ "<br><br/>" + "Completion Date" + ":&nbsp;" 
+ TextBoxCompletionDate.Text + "<br><br/>" + "Machine Description" 
+ ":&nbsp;" + TextBoxMachineDescription.Text + "<br><br/>" 
+ "Machine Location" + ":&nbsp;" + TextBoxMachineLocation.Text 
+ "<br><br/>" + "Work Required" + ":&nbsp;" + TextBoxWorkRequired.Text
+ "<br><br/>" + "Status" + ":&nbsp;" + TextBoxStatus.Text;
mm.IsBodyHtml = true;
System.Net.Mail.SmtpClient client = new System.Net.Mail.SmtpClient();
client.Host = ConfigurationManager.AppSettings["smtpServer"];
client.Send(mm);

当上面的代码作为电子邮件发送时,结果看起来像这样,14是可点击的链接:

WorkOrderNumber:  14<-Click on the Work Order Number
Requestor: Mark
Date: 01/07/2015
Department: IT
Completion Date: 01/08/2015
Machine Description: Fan
Machine Location: SomeLocation
Work Required: Needs Installing 
Status: Open 

那么在webform2中我可以使用这个:

 protected void Page_Load(object sender, EventArgs e)
        {
            var workourdernum = Request.QueryString["WorkOrderNum"];
        }

所以我只是想从TextBox13的数字。文本将与链接一起传递,我在网上看到人们正在通过Response.Redirect()完成类似的任务

将文本框值作为链接和参数传递给另一个web表单

这样行吗?

 "<a href='"http://localhost:49695/Safety.aspx?WorkOrderNum=" + 
+ TextBox13.Text + "'">" + TextBox13.Text + "</a>" 
+ "<-Click on the Work Order Number" + "<br><br/>" 

您将在查询字符串中传递工单号。然后,您的网页可以从查询字符串中提取工单号。

你会得到这样的HTML:

 <a href="http://localhost:49695/Safety.aspx?WorkOrderNum=123">123</a>

您已经拥有的代码(对于Page_Load)可以完美地提取第二页中的工作订单编号。

下面是如何将值从一个表单传递到另一个表单的示例。

webform1。Aspx -例如在按钮上单击事件

Response.Redirect("webform2.aspx?number=" + TextBox13.Text);

webform2.aspx

int passedNumber; 
protected void Page_Load(object sender, EventArgs e)
{
   if (Request["number"] != null)
   {
       passedNumber = Convert.ToInt32(Request["number"]);
   } 
}

现在你可以在webform2上对这个数字做任何你想做的事情。