ASP.NET:将数据从客户端发布到服务器
ASP.NET: Post data from client to server
我对 ASP.NET 有点陌生,我正在尝试找出将数据从客户端发布到服务器的正确方法。目前,我有一个包含HTML内容的ASPX页面,我正在考虑如何将HTML内容中的数据发布到服务器。假设我想在发布数据之前做一些 javascript 的东西,那么这样做的"最佳实践"是什么。
- 它应该是一个简单的 HTML 表单,在 .cs 文件中带有侦听器(假设我可以在实际发布之前注入一些 javascript 代码(。
- 也许我应该有一个简单的 HTML(而不是 pf ASPX(来使用 javascript 发布数据?
- 别的?
谢谢
假设你已经有一个服务器端表单,你只需要处理表单的onsubmit
事件。
<html>
<head>
<script language="javascript">
function handleSubmit()
{
var form = this;
.....
}
</script>
</head>
<body>
<form runat="server" onsubmit="handleSubmit()">
...
</form>
</body>
</html>
handleSubmit()
应在script
块或外部脚本中声明。如果您从此方法返回false
,它将停止提交表单;其他任何内容,它将继续提交到服务器。
.NET只使用一种形式,回发由ASP .NET控件触发,或者使用javascript触发。某些控件默认触发回发,其中一些控件需要设置,例如属性AutoPostBack
。这意味着,HTML 上方有一个层,控件会为您完成。您只需处理服务器端的事件(.cs文件(。这试图模仿WinForms。
如果要提交表单,只需放置一个按钮并处理其单击事件服务器端,从中可以访问其他控件的值。因此,页面上只有一个表单,因此该过程可以自动化。
如果你熟悉 HTML 并且刚刚开始使用 ASP .NET,我建议你看看 ASP .NET MVC,从 HTML 的角度来看,事情更直接。
只需在表单标签中定义操作并设置方法属性即可像这样发布和提交表单,
<form id="myForm" runat="server" action="Default.aspx" method="post">
// some fields are here. for instance
<asp:TextBox ID="txtName" runat="server" ></asp:TextBox>
<asp:Button ID="btnSubmit" Text="Submit" runat="server"/>
</form>
单击"提交"按钮时,文本框值发布到操作页面"默认.aspx">
并从默认代码中获取此值.aspx.cs如下所示
public partial class Default : System.Web.UI.Page
{
string name = Request.Form["txtName"];
}
如果使用 ASP.Net 控件,则可以查看视图状态和回发概念以实现所需的内容。但是如果你使用的是HTML控件,我建议你使用ajax,而不是使用html表单将数据发布到aspx页面。你可以使用 jQuery.ajax(( 来实现这个目的。
此时的问题是如何在后端处理 ajax 请求?您可以执行以下操作之一:
-
创建一个 aspx 页,用于读取已发布的数据并返回 json 响应。您需要设置 Response.ContentType = "application/json" 并使用 Response.Write(( 编写 json;并在此页面中调用 Response.End((。- 这很容易,但做事方式很蹩脚。
-
创建一个读取帖子数据并提供 json 响应的 HTTP 处理程序。
-
创建 .asmx Web 服务并使用它。
-
使用页面 Web 方法。检查 http://encosia.com/using-jquery-to-directly-call-aspnet-ajax-page-methods/
-
创建 WCF REST Web 服务。检查 http://www.codeproject.com/Articles/571813/A-Beginners-Tutorial-on-Creating-WCF-REST-Services
-
使用新的和很棒的 Web API。检查 http://www.asp.net/web-api
- 客户端服务器REST API captcha实现
- 使用谷歌应用程序脚本将服务器端数据表返回到客户端
- 如何使用Socket.io将命令从客户端发送到服务器
- 如何轻松地将服务器端变量从Java代码转移到客户端代码
- 从客户端获取修改后的对象,并将其与服务器上的原始对象组合
- 将客户端特定的日期格式返回到服务器MVC4
- 服务器上的Meteor客户端断开连接事件
- 在Javascript服务器/客户端中共享对象定义
- 可以't连接客户端和服务器import.io
- 套接字服务器向客户端广播,但不从两者接收
- 使用COMETD将服务器推送到客户端(dojo)
- 了解如何在javascript/HTML5/NodeJS中实现客户端-服务器-客户端基础结构
- 服务器过载..有要求?如何有效地对服务器-客户端进行编程
- Math.sin()在服务器/客户端上给出不同的结果
- Internet Explorer浏览器问题:浏览器不提交POST数据与Ajax请求,服务器/客户端挂起
- 如何在连接服务器客户端之前获得IP地址(使用websockets/ws)
- Node.js服务器/客户端模块混乱,EventEmitter问题
- 服务器-客户端推/拉连接是如何工作的
- 如何执行在服务器/客户端使用回调参数的javascript函数
- 最好的jQuery/Java PHP解决方案为本地主机服务器-客户端实时聊天