如何从提交按钮上的 TextBot 获取值?
Posted
技术标签:
【中文标题】如何从提交按钮上的 TextBot 获取值?【英文标题】:How to get the value from a TextBot on a submit button? 【发布时间】:2019-06-13 00:45:31 【问题描述】:我正在创建一个将从 QR 码接收数据的网页。我是 asp .Net 的新手,我正在尝试从 TextBox 接收一个值并将其传递给 SQL 服务器。我怎样才能使用 javascript 或任何语言做到这一点?
这是我的代码:
我尝试使用以下命令执行此操作:String text = email.Text.ToString();
<%@ Page Language="vb" AutoEventWireup="false" CodeBehind="SampleDB.aspx.vb" Inherits="SampleDB.SampleDB" %>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>MS SQL SAMPLE DATABASE</title>
<link rel="stylesheet" href="font/Audiowide.css" />
<link rel="stylesheet" href="css/style.css"/>
</head>
<body>
<section class="cus-top-section">
<h2 class="cus-main-heading">MS SQL SAMPLE DATABASE</h2>
</section>
<form id="form1" runat="server">
<section class="cus-bot-section">
<h2 class="hidden">MS SQL Database</h2>
<div style="overflow-x:auto;" class="cus-table-outer">
<div class="cus-btn" >
<asp:Button ID="btnSampleData" runat="server" Text="Show Sample Data" CssClass="submit" />
</div>
<div class="tb-left"> </div>
<div class="tb-rgt">
<asp:Label ID="lblMessage" runat="server"></asp:Label>
<br />
<asp:GridView ID="GridView1" runat="server">
</asp:GridView>
<asp:SqlDataSource ID="sampledataSource" runat="server" ConnectionString="<%$ ConnectionStrings:connection %>" SelectCommand="SELECT * FROM [People]"></asp:SqlDataSource>
</div>
</div>
</section>
<section class ="campos">
//Campo inserir o nome
<table>
<tr>
<td>
<div style="overflow-x:auto;" class="cus-table-outer"/>
<asp:Label Text="Insira o seu nome completo" runat="server" CssClass="cus-bot-section" />
</td>
<td colspan="2">
<div style="overflow-x:auto;" class="cus-table-outer"/>
<asp:TextBox ID="TextBox2" runat="server" CssClass="cus-bot-section"></asp:TextBox>
</td>
</tr>
</table>
// Campo inserir endereço
<table>
<tr>
<td>
<div style="overflow-x:auto;" class="cus-table-outer"/>
<asp:Label Text="CPF" runat="server" CssClass="cus-bot-section" />
</td>
<td colspan="2">
<div style= "overflow-x:auto;" class="cus-table-outer"/>
<asp:TextBox ID="CPF" runat="server" CssClass="cus-bot-section" onkeydown = "return (!(event.keyCode>=65) && event.keyCode!=32);"
Rows="10" onkeypress="return this.value.length<=10" Width="100%"></asp:TextBox>
</td>
</tr>
</table>
<script>
window.fbAsyncInit = function()
FB.init(
appId : '307419739906888',
cookie : true,
xfbml : true,
version : 'v3.2'
);
FB.AppEvents.logPageView();
;
(function(d, s, id)
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) return;
js = d.createElement(s); js.id = id;
js.src = "https://connect.facebook.net/en_US/sdk.js";
fjs.parentNode.insertBefore(js, fjs);
(document, 'script', 'facebook-jssdk'));
</script>
<fb:login-button scope="public_profile,email"
onlogin="checkLoginState();">
</fb:login-button>
<table>
<tr>
<td>
<div style="overflow-x:auto;" class="cus-table-outer"/>
<asp:Label Text="email" runat="server" CssClass="cus-bot-section" />
</td>
<td colspan="2">
<div style= "overflow-x:auto;" class="cus-table-outer"/>
<asp:TextBox ID="email" runat="server" CssClass="cus-bot-section" Width="100%"></asp:TextBox>
</td>
</tr>
</table>
</section>
<script runat="server">
Sub submit(sender As Object, e As EventArgs)
End Sub
</script>
<asp:TextBox id="txt1" runat="server" />
<asp:Button OnClick="submit" Text="Submit" runat="server" />
<p><asp:Label id="lbl1" runat="server" /></p>
</form>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script>
$(document).ready(function()
$("input.submit").click(function()
var mohara = $("email")
$()
$("table").toggle();
);
);
</script>
</body>
</html>
我应该使用外部类来完成它还是可以在文件 aspx 中完成它?
【问题讨论】:
【参考方案1】:首先,您似乎想用 C# 编写代码,但实际上项目是用 VB 编写的(我可以从标题中看出),所以您可能想用 ASP.NET C# 打开项目。
现在的问题,
aspx 文件背后的逻辑应该写在SampleDB.aspx.vb
里面(写在你文件的顶部:CodeBehind="SampleDB.aspx.vb"
)。
(当您切换到 c# 时,文件将以 .cs
而不是 .vb
结尾,因为它将是用 c# 编写的类)
在 SampleDB.aspx.vb 中,您将能够使用其 ID 访问 TextBox,因此假设这是 TextBox:
<asp:TextBox ID="EmailTextBox" runat="server" CssClass="cus-bot-section"></asp:TextBox>
您可以通过写String text = EmailTextBox.Text;
来获取其中的文字
在该课程中,您还应该访问您的数据库。 (它被称为CodeBehind
是有原因的:)它是视图背后的代码)。
我建议创建一个新的静态类来处理与数据库的连接,然后无论您想在哪里使用它,都可以从后面的代码中调用正确的函数。
希望我能帮上忙:)
【讨论】:
成功了!您知道如何将该字符串传递给 SQL 数据库吗?例如:SQL 上名为 firstName 的列的字符串名称 @LUCASMSANTOS 我很高兴它成功了 :),请阅读有关在 C# 中实现对 SQL 数据库的访问的教程(例如使用这个命名空间:System.Data.SqlClient),它们有很多教程在网络上:)以上是关于如何从提交按钮上的 TextBot 获取值?的主要内容,如果未能解决你的问题,请参考以下文章