问题描述
我遇到了使输入按钮在 ASP.NET 和 C# 中工作的问题。基本上我试图触发回车按钮。
这是我的 aspx 标记:
<%@ Page Title="About" Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true" CodeBehind="About.aspx.cs" Inherits="Scan_Temperature_System.About" %>
<%@ MasterType VirtualPath ="~/Site.Master" %>
<asp:Content ID="BodyContent" ContentPlaceHolderID="MainContent" runat="server">
<script type="text/javascript">
function Confirm() {
var confirm_value = document.createElement("INPUT");
confirm_value.type = "hidden";
confirm_value.name = "confirm_value";
if (confirm("Are you sure you want to Submit?")) {
confirm_value.value = "Yes";
}
else {
confirm_value.value = "No";
}
document.forms[0].appendChild(confirm_value);
}
</script>
<div class="jumbotron" >
<h3 style="text-decoration:underline; font-weight:bold">Temperature Tracking Module</h3>
<hr />
<div class="form-groups">
<table style="width: 100%;">
<tr>
<td>
<asp:Label ID="Label1" runat="server" Text="Employee ID"></asp:Label>
</td>
<td>
<asp:Label ID="Label2" runat="server" Text="Date"></asp:Label>
</td>
<td>
<asp:Label ID="Label3" runat="server" Text="First Name"></asp:Label>
</td>
<td>
<asp:Label ID="Label4" runat="server" Text="Last Name"></asp:Label>
</td>
</tr>
<tr>
<td>
<asp:TextBox ID="TextBox1" Width="90%" runat="server" OnTextChanged="TextBox1_TextChanged" AutopostBack="true"></asp:TextBox>
</td>
<td>
<asp:TextBox ID="TextBox2" Width="90%" runat="server" ReadOnly="true"></asp:TextBox>
</td>
<td>
<asp:TextBox ID="TextBox3" Width="90%" runat="server" ReadOnly="true"></asp:TextBox>
</td>
<td>
<asp:TextBox ID="TextBox4" Width="90%" runat="server" ReadOnly="true"></asp:TextBox>
</td>
</tr>
<tr>
<td>
<asp:Label ID="Label5" runat="server" Text="Enter Temperature"></asp:Label>
</td>
<td>
<asp:Label ID="Label11" runat="server" Text="1st Temperature"></asp:Label>
</td>
<td>
<asp:Label ID="Label13" runat="server" Text="2nd Temperature"></asp:Label>
</td>
<td>
<asp:Label ID="Label14" runat="server" Text="3rd Temperature"></asp:Label>
</td>
</tr>
<tr>
<td>
<asp:TextBox ID="TextBox5" Width="90%" runat="server" AutopostBack="true" style="left: 0px; top: 0px"></asp:TextBox>
</td>
<td>
<asp:TextBox ID="Temperature1" Width="90%" runat="server" ReadOnly="true" style="left: 0px; top: 0px"></asp:TextBox>
</td>
<td>
<asp:TextBox ID="TextBox7" Width="90%" runat="server" ReadOnly="true"></asp:TextBox>
</td>
<td>
<asp:TextBox ID="TextBox8" Width="90%" runat="server" ReadOnly="true" style="left: 0px; top: 0px"></asp:TextBox>
</td>
</tr>
<tr>
<td>
<asp:Label style="text-align-last:left" ID="Label10" runat="server" Text=" Issue Face Mask"></asp:Label></td>
<td>
</td>
<td></td>
<td></td>
</tr>
<tr>
<td>
<asp:DropDownList style="text-align-last:left" ID="DropDownList1" runat="server" Width="100px">
<asp:ListItem>Yes</asp:ListItem>
<asp:ListItem>No</asp:ListItem>
</asp:DropDownList></td>
<td>
<asp:Button ID="Button1" runat="server" Text="Submit" CssClass="Export_Button" OnClick="Button1_Click" OnClientClick="Confirm()" />
</td>
<td colspan="2">
<asp:Label ID="Label15" runat="server" Font-Bold="True" Font-Size="XX-Large" Text=""></asp:Label>
</td>
</tr>
<tr>
<td>
<asp:Label ID="Label12" runat="server" ForeColor="Red" Font-Bold="True" Font-Overline="False" Font-Size="Medium"></asp:Label>
</td>
<td>
</td>
<td> </td>
<td> </td>
</tr>
</table>
<br />
</div>
<br />
<div>
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataSourceID="sqlDataSource1" CssClass="GridView1" HeaderStyle-CssClass="Header" RowStyle-CssClass="rows" SelectedRowStyle-CssClass="selectedrow" PagerStyle-CssClass="pager" AllowPaging="True" Visible="false">
<Columns>
<asp:BoundField datafield="Dates" HeaderText="Dates" SortExpression="Dates" DataFormatString="{0:yyyy-MM-dd}" ItemStyle-BorderColor="Black"/>
<asp:BoundField datafield="employeeid" HeaderText="Employee id" SortExpression="employeeid" ItemStyle-Width="100px" ItemStyle-BorderColor="Black"/>
<asp:BoundField datafield="Givenname" HeaderText="Givenname" SortExpression="Givenname" ItemStyle-BorderColor="Black" />
<asp:BoundField datafield="Surname" HeaderText="Surname" SortExpression="Surname" ItemStyle-BorderColor="Black"/>
<asp:BoundField datafield="Temperature1" HeaderText="Temp1" SortExpression="Temperature1" ItemStyle-BorderColor="Black"/>
<asp:BoundField datafield="Time1" HeaderText="Time1" SortExpression="Time1" ItemStyle-BorderColor="Black"/>
<asp:BoundField datafield="Temperature2" HeaderText="Temp2" SortExpression="Temperature2" ItemStyle-BorderColor="Black"/>
<asp:BoundField datafield="Time2" HeaderText="Time2" SortExpression="Time2" ItemStyle-BorderColor="Black"/>
<asp:BoundField datafield="Temperature3" HeaderText="Temp3" SortExpression="Temperature3" ItemStyle-BorderColor="Black"/>
<asp:BoundField datafield="Time3" HeaderText="Time3" SortExpression="Time3" ItemStyle-BorderColor="Black"/>
<asp:BoundField datafield="Temperature4" HeaderText="Temp4" SortExpression="Temperature4" ItemStyle-BorderColor="Black"/>
<asp:BoundField datafield="Time4" HeaderText="Time4" SortExpression="Time4" ItemStyle-BorderColor="Black"/>
<asp:BoundField datafield="Temperature5" HeaderText="Temp5" SortExpression="Temperature5" ItemStyle-BorderColor="Black"/>
<asp:BoundField datafield="Time5" HeaderText="Time5" SortExpression="Time5" ItemStyle-BorderColor="Black"/>
<asp:BoundField datafield="Temperature6" HeaderText="Temp6" SortExpression="Temperature6" ItemStyle-BorderColor="Black"/>
<asp:BoundField datafield="Time6" HeaderText="Time6" SortExpression="Time6" ItemStyle-BorderColor="Black"/>
<asp:BoundField datafield="Temperature7" HeaderText="Temp7" SortExpression="Temperature7" ItemStyle-BorderColor="Black"/>
<asp:BoundField datafield="Time7" HeaderText="Time7" SortExpression="Time7" ItemStyle-BorderColor="Black"/>
<asp:BoundField datafield="Temperature8" HeaderText="Temp8" SortExpression="Temperature8" ItemStyle-BorderColor="Black"/>
<asp:BoundField datafield="Time8" HeaderText="Time8" SortExpression="Time8" ItemStyle-BorderColor="Black"/>
<asp:BoundField datafield="Temperature9" HeaderText="Temp9" SortExpression="Temperature9" ItemStyle-BorderColor="Black"/>
<asp:BoundField datafield="Time9" HeaderText="Time9" SortExpression="Time9" ItemStyle-BorderColor="Black"/>
<asp:BoundField datafield="Temperature10" HeaderText="Temp10" SortExpression="Temperature10" ItemStyle-BorderColor="Black"/>
<asp:BoundField datafield="Time10" HeaderText="Time10" SortExpression="Time10" ItemStyle-BorderColor="Black"/>
</Columns>
<HeaderStyle CssClass="header"></HeaderStyle>
<PagerStyle CssClass="pager"></PagerStyle>
<RowStyle CssClass="rows"></RowStyle>
<SelectedRowStyle CssClass="selectedrow"></SelectedRowStyle>
</asp:GridView>
<asp:sqlDataSource ID="sqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:temperature_uatConnectionString %>" ProviderName="<%$ ConnectionStrings:temperature_uatConnectionString.ProviderName %>" SelectCommand="SELECT Dates,Temperature1,Time1,Temperature2,Time2,Temperature3,Time3,Temperature4,Time4,Temperature5,Time5,Temperature6,Time6,Temperature7,Time7,Temperature8,Time8,Temperature9,Time9,Temperature10,Time10,employeeid,Givenname,Surname FROM temperature where employeeid = @id Order by Dates desc limit 5">
<SelectParameters>
<asp:ControlParameter Type="Int32" ControlID="TextBox1" Name="id"/>
</SelectParameters>
</asp:sqlDataSource>
</div>
</div>
</asp:Content>
这是我的 C# 代码
using System;
using System.Collections.Generic;
using System.Drawing;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using MysqL.Data.MysqLClient;
namespace Scan_Temperature_System
{
public partial class About : Page
{
protected void Page_Load(object sender,EventArgs e)
{
if(TextBox1.Text =="")
{
TextBox1.Focus();
}
if (Session["Username"] != null)
{
Master.GetLabel.Visible = true;
Master.getLoginBtn.Visible = false;
Master.GetLabel.Text = "Welcome " + Session["Username"];
Master.getlogoutbtn.Visible = true;
Master.getregbtn.Visible = false;
}
else
{
Response.Redirect("Login.aspx?url=" + Server.UrlEncode(Request.Url.AbsoluteUri));
}
TextBox2.Text = DateTime.Now.ToString("yyyy-MM-dd");
}
protected void TextBox1_TextChanged(object sender,EventArgs e)
{
MysqLConnection con = new MysqLConnection("Data Source = 192.168.71.155;user id=root;password=In-Tech2019;persistsecurityinfo=True;database=temperature_uat");
con.open();
if (TextBox1.Text != "")
{
MysqLCommand cmd = new MysqLCommand("Select e.Surname,e.Givenname,e.Temperature1,e.Temperature2,e.Temperature3,m.Levels,m.Description " +
"from temperature_uat.temperature e Join temperature_uat.level m on e.employeeid = m.employeeid where " +
" e.employeeid = @emp and e.Dates = @date",con);
cmd.Parameters.AddWithValue("@emp",int.Parse(TextBox1.Text));
cmd.Parameters.AddWithValue("@date",TextBox2.Text);
MysqLDataReader sdr = cmd.ExecuteReader();
if (sdr.HasRows)
{
while (sdr.Read())
{
TextBox3.Text = sdr.GetValue(0).ToString();
TextBox4.Text = sdr.GetValue(1).ToString();
Temperature1.Text = sdr.GetValue(2).ToString();
TextBox7.Text = sdr.GetValue(3).ToString();
TextBox8.Text = sdr.GetValue(4).ToString();
TextBox5.Focus();
TextBox5.Text = "";
Label12.Text = "";
Label15.Text = sdr.GetValue(6).ToString();
GridView1.Visible = true;
}
}
}
con.Close();
}
protected void Button1_Click(object sender,EventArgs e)
{
String confirmValue = Request.Form["confirm_value"];
MysqLConnection con = new MysqLConnection("Data Source = 192.168.71.155;user id=root;password=In-Tech2019;persistsecurityinfo=True;database=temperature_uat");
con.open();
if (confirmValue == "Yes")
{
if (DropDownList1.SelectedValue == "Yes")
{
try
{
MysqLCommand cmd = new MysqLCommand("Update temperature_uat.temperature set Temperature10 = Temperature9,Temperature9 = Temperature8,Temperature8 =Temperature7,Temperature7 =Temperature6 " +
",Temperature6 = Temperature5,Temperature5 = Temperature4,Temperature4 = Temperature3,Temperature3 = Temperature2,Temperature2 = Temperature1,Temperature1 = '" + TextBox5.Text + "',Issue_Mask ='"
+ DropDownList1.SelectedValue + "',Quantity = 1,Time10 = Time9,Time9 = Time8,Time8 = Time7,Time7 = Time6,Time6 = Time5,Time5 = Time4" +
",Time4 = Time3,Time3 = Time2,Time2 = Time1,Time1 ='" + DateTime.Now.ToShortTimeString() + "'where employeeid = '" + TextBox1.Text + "'and Dates ='" + TextBox2.Text + "'",con);
cmd.ExecuteNonQuery();
con.Close();
Response.Redirect("About.aspx");
}
catch
{
Label12.Text = "Enter Temperature is required";
}
}
else if (DropDownList1.SelectedValue == "No")
{
try
{
MysqLCommand cmd = new MysqLCommand("Update temperature_uat.temperature set Temperature10 = Temperature9,Temperature1 = '" + TextBox5.Text
+ "',Issue_Mask ='" + DropDownList1.SelectedValue + "',con);
cmd.ExecuteNonQuery();
con.Close();
Response.Redirect("About.aspx");
ClientScript.RegisterStartupScript(this.GetType(),"alert","alert('Name: " + TextBox5.Text + "');",true);
}
catch
{
Label12.Text = "Enter Temperature is required";
}
}
}
else
{
Response.Redirect("About.aspx");
}
}
protected void TextBox5_TextChanged(object sender,EventArgs e)
{
Button1.Focus();
}
protected void DropDownList1_SelectedindexChanged(object sender,EventArgs e)
{
Button1.Focus();
}
}
}
这是我的输出
https://i.stack.imgur.com/hDwBj.png
当我输入员工 ID 时,它应该显示他们的姓名,当我输入员工体温并按 Enter 按钮时什么也没发生,我需要单击提交按钮然后才会弹出如果用户单击是然后它会弹出将提交,如果用户单击否,则它将取消。我不想点击提交按钮,而是想按回车按钮提交温度。我需要添加一些代码来触发输入按钮工作,但我不确定我需要添加哪些代码以及我需要在哪一行包含
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)