C#/jQuery使用ajax,而不是使用encosia示例
我正在玩C#和jQuery(Ajax)。在创建Ajax请求时尽量保持C#代码的简短和干净,而不使用Encosia示例(简而言之,不使用ASP.NET进行Ajax调用)。响应可以是XML、JSON或纯(部分)HTML 我有一个工作版本,但这样做更可取吗?或者我应该考虑另一种方法吗? 在VS2010 express中,我确实收到了1条警告(针对ajax.aspx页面)(搜索此错误不会给我一个警告) 警告C#/jQuery使用ajax,而不是使用encosia示例,c#,jquery,ajax,visual-studio-2010,C#,Jquery,Ajax,Visual Studio 2010,我正在玩C#和jQuery(Ajax)。在创建Ajax请求时尽量保持C#代码的简短和干净,而不使用Encosia示例(简而言之,不使用ASP.NET进行Ajax调用)。响应可以是XML、JSON或纯(部分)HTML 我有一个工作版本,但这样做更可取吗?或者我应该考虑另一种方法吗? 在VS2010 express中,我确实收到了1条警告(针对ajax.aspx页面)(搜索此错误不会给我一个警告) 警告 验证():元素“html”出现的次数太少 default.aspx <asp:Conten
验证():元素“html”出现的次数太少 default.aspx
<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">
<div id="Result"></div>
<script type="text/javascript" language="javascript">
$(function () {
$.ajax({
url: "AJAX.aspx",
success: function (data) { $("#Result").html(data); }
});
});
</script>
</asp:Content>
这就像错误所说的:你必须有
标签才能有一个有效的html文档。因为您的页面似乎没有使用母版页,所以可能没有呈现html标记。有一点很简短,然后又太简短了。我认为您应该在代码中添加与jQuery ajax调用相关的内容。
您尚未明确指定所有设置。我使用以下设置所有ajax调用的默认值,这些值可以在任何阶段由单个ajax调用覆盖:
$.ajaxSetup({
type: "POST",
contentType: "application/json; charset=utf-8",
dataType: "json",
async: true,
error: function (XMLHttpRequest, textStatus, errorThrown) {
utilities.ajaxErrorAlert(XMLHttpRequest, textStatus, errorThrown);
}
});
using System;
using System.Text;
using System.Data;
public partial class AJAX : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
Response.Clear();
Response.Write("Hello world");
Response.End();
}
}
$.ajaxSetup({
type: "POST",
contentType: "application/json; charset=utf-8",
dataType: "json",
async: true,
error: function (XMLHttpRequest, textStatus, errorThrown) {
utilities.ajaxErrorAlert(XMLHttpRequest, textStatus, errorThrown);
}
});