我试图将一个aspx文件加载到div中,但如果aspx文件具有asp.net控件,它将无法工作。 (这有点重要。)如果我只有html控件,它可以正常工作,但不能使用runat =" server"。我已经将主文件和.aspx文件剥离到几乎没有。此外,后面的代码不会捕获传入的数据 - PageSize。即使只使用html元素也没有。为什么赢得aspx页面加载?我已经尝试取出所有的html标签,将数据传递给" PageSize":#34; 50"," PageSize":50和其他组合。没运气。
<%@ Language="C#" AutoEventWireup="true" CodeBehind="Site.master.cs" Inherits="jQueryTutorial.SiteMaster" %>
<!DOCTYPE html>
<html lang="en">
<head runat="server">
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title></title>
<webopt:BundleReference runat="server" Path="~/Content/css" />
<script src="Scripts/jquery-1.10.2.js"></script>
<script type="text/javascript">
$(document).ready(function () {
$('#MyButton').click(function () {
$('#OutputDiv').load('GetCustomers.aspx', { PageSize: 10 },
function (response, status, xhr)
{
if (status == "error")
alert(xhr.error);
//else
// alert('Loaded');
});
});
});
</script>
</head>
<body>
<button id="MyButton">Click to get HTML</button>
<div id="OutputDiv"></div>
</body>
</html>
要加载的.aspx文件:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="GetCustomers.aspx.cs" Inherits="jQueryTutorial.GetCustomers" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
</head>
<body>
<input type="button" value="Press me" />
<input id="abc" />
<%-- <asp:Button ID="Button1" Text="Button" runat="server" />--%>
</body>
</html>
要加载的asps文件后面的代码:
using System;
namespace jQueryTutorial
{
public partial class GetCustomers : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
var pageSize = 50;
if (Request["PageSize"] != null)
pageSize = Int32.Parse(Request["PageSize"]);
}
}
}
答案 0 :(得分:0)
我收到了错误消息,但发现这是由于语法错误造成的。我修复了错误,但仍无法使用$ .Load()方法读取后面代码中的PageSize数据。
$('#OutputDiv').load('GetCustomers.aspx', { PageSize: 10 });
但是,我使用了$ .get()
$.get('GetCustomers.aspx', { PageSize: 10 }, function (data) {
$('#OutputDiv').html(data);
});
这很有效。我仍然想知道为什么使用$ .Load()不会传递PageSize数据。
谢谢。
答案 1 :(得分:0)
如前所述,我正在关注Pluralsight jQuery Fundamentals教程。我下载了源文件,一切都在那里工作。它使用版本1.9.1。我正在使用1.10.2。我确实通过改变
的语法来使$ .load()工作$('#OutputDiv').load('GetCustomers.aspx', {PageSize:10} );
到
$('#OutputDiv').load('GetCustomers.aspx', "PageSize=10" );
但是这仍然不适用于$ .post()。
$.post('GetCustomers.aspx', "PageSize=15",
function (data) {$('#OutputDiv').html(data);});
另外,我无法想象如何传递多个数据值。我现在试过
"PageSize=10 var2=1"
"PageSize=10,var2=1"
"PageSize=10;var2=1"
"PageSize=10-var2=1"
如何传递任何数据? 如何传递多个值?
谢谢。