2016-11-14 52 views
0

我试图加载一个aspx文件到一个div,但它不会工作,如果aspx文件有asp.net控件。 (这点有点。)如果我只有html控件,它可以正常工作,但不能用runat =“server”。我已经剥离了主文件和.aspx文件几乎没有。而且,后面的代码不会捕获正在传入的数据 - PageSize。即使只使用html元素也没有。为什么不加载aspx页面?我试着拿出所有的html标签,通过数据作为“PageSize”:“50”,“PageSize”:50和其他组合。没有运气。要加载jQuery.Load(.aspx)不工作

<%@ 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> 

代码隐藏文件的平均销售价格要加载:

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

那么,你得到的具体错误是什么? – mason

+0

更新:我想出了部分问题。我正在关注Pluralsight - jQuery基础知识中的一个例子。这个例子是使用一个HTML页面作为父页面。我使用的是默认的网页表单应用程序,所以site.master文件有一个表单标签。我在Click事件中添加了“return false”,以便返回所有记录,但我仍然没有获得通过“{PageSize:50}”的数据。当我在GetCustomers.aspx的表单加载事件中断时,Request [“PageSize “]始终为空 – FirstByte

+0

另一个更新:仍然无法使用.load传递页面大小变量,但.get的作品。 – FirstByte

回答

0

我有一个错误信息,但发现它的语法是由于错误。我修正了错误,但仍然无法读取使用$ .Load()方法的代码中的PageSize数据。

$('#OutputDiv').load('GetCustomers.aspx', { PageSize: 10 }); 

但是,我用$。获得()

$.get('GetCustomers.aspx', { PageSize: 10 }, function (data) { 
    $('#OutputDiv').html(data); 
}); 

和这个工作。我仍然想知道为什么使用$ .Load()不会传递PageSize数据。

谢谢。

0

如前所述,我遵循Pluralsight jQuery Fundamentals教程。我下载了源文件,并从那里一切工作。它使用版本1.9.1。我正在使用1.10.2。我的确得到了$ .load()通过改变语法从

$('#OutputDiv').load('GetCustomers.aspx', {PageSize:10}); 

合作,

$('#OutputDiv').load('GetCustomers.aspx', "PageSize=10"); 

但是,这仍然不是$。员额工作()。

$.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" 

如何传递任何数据以发布? 如何传递多个值?

谢谢。

相关问题