我创建了一个控件,它有一个函数,但我想在任何.aspx页面或母版页上使用ajax调用调用该函数,就像从代码隐藏文件中调用函数一样,对代码隐藏文件很好但是没有调用从acsx.cs文件到任何包含/注册该控件的.aspx页面/母版页的功能
这是我的HTML
<div>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<input type="button" id="Button2" runat="server" value="Button" />
</div>
我的ascx.cs代码
[WebMethod()]
[ScriptMethod()]
public static void myMethod(string text)
{
Label1.text=text;
}
我的ajax调用whn从函数后面调用函数就像是
$(document).ready(function () {
$("#Button2").click(function () {
var text = $("#TextBox1").val();
$.ajax({
type: "POST",
url: "WebForm1.aspx/myMethod",
data: "{ text: '" + text + "'}",
contentType: "application/json; charset=utf-8",
dataType: "json",
async: "true",
cache: "false",
success: function (msg) {
alert("success");
},
Error: function (x, e) {
// On Error
}
});
});
});
在ajax调用中我从代码隐藏中调用函数,这就是为什么要放置 url:&#34; WebForm1.aspx / myMethod&#34;,但是在调用函数时很困惑.ascx.cs,就像那个Url值一样,因为我只是在我的页面上包含那个控件,如
<UC:userControl id="control1" runat="server" />
我已在我的页面上添加/注册,如<%@ Register TagPrefix="UC" TagName="userControl " src="~/Controls/Mycontrol.ascx" %>
所以我在这里与这个网址值混淆了
我尝试了像
first-url: "Mycontrol.ascx/myMethod"
second-url: "WebForm1.aspx/Mycontrol.ascx/myMethod"