我正在使用一个干净的测试页面,并使用jQuery的user control
函数加载.load()
。
我得到的当前错误是这样的:
GET http://localhost:27950/OCDB/test.ascx 403 (Forbidden)
这是我的网页代码:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="test.aspx.cs" Inherits="test" %>
<%@ Register Src="~/test.ascx" TagPrefix="uc1" TagName="test" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>This is a test.</title>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.9.0.js"></script>
<script type="text/javascript" src="http://code.jquery.com/ui/1.9.0/jquery-ui.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$('#ucPlaceholder').load('test.ascx');
});
</script>
</head>
<body>
<form id="form1" runat="server">
<div id="ucPlaceholder">
</div>
</form>
</body>
</html>
我的用户控制代码:
<%@ Control Language="C#" AutoEventWireup="true" CodeFile="test.ascx.cs" Inherits="test" %>
<input placeholder="test input"/>
正如你所看到的,它超级简单。我的直接猜测是页面没有拿起Register
。有人能告诉我哪里出错了吗?
答案 0 :(得分:3)
我认为你不能使用jQuery直接调用用户控件。
但你可以为它提供通用的http处理程序的帮助。
http://blog.ovesens.net/2008/12/dynamically-loading-asp-net-user-controls-with-jquery/
http://www.codeproject.com/Articles/117475/Load-ASP-Net-User-Control-Dynamically-Using-jQuery