绑定Jquery单击注入的html
很抱歉,如果以前有人问过这个问题,我已经花了一些时间搜索网页,无法找到解决方案 我正在使用ASP.NET和JQuery 基本上,我从服务器端返回一些HTML图标到客户端,因为它们是由XML文件自动生成的。图标的类名为“Report” 我的Jquery脚本不再在单击报表时触发,因为我使用文本或标签将它们引入 在母版页中绑定Jquery单击注入的html,jquery,asp.net,binding,label,literals,Jquery,Asp.net,Binding,Label,Literals,很抱歉,如果以前有人问过这个问题,我已经花了一些时间搜索网页,无法找到解决方案 我正在使用ASP.NET和JQuery 基本上,我从服务器端返回一些HTML图标到客户端,因为它们是由XML文件自动生成的。图标的类名为“Report” 我的Jquery脚本不再在单击报表时触发,因为我使用文本或标签将它们引入 在母版页中 // Load reports $(".CLIButton").click( function () { var Data = $
// Load reports
$(".CLIButton").click(
function () {
var Data = $(this).attr('path');
Data = JSON.stringify({ "xmlFile": Data });
$.ajax({
url: "ProcessReports.aspx/ReturnStyledPage",
data: Data,
type: "POST",
dataType: "json",
contentType: "application/json; charset=utf-8",
success: function (mydata) {
$("#ReportContent").html(mydata.d);
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
alert("There has been an error in this Ajax call 'ProcessReports.aspx/ReturnStyledPage'");
},
async: false
});
}
);
$(".Report").click(
function () {
alert("hi");
});
用于创建html的Aspx页面
[WebMethod]
public static string ReturnStyledPage(string xmlFile)
{
// Build report page
//Load XML
XmlDocument document = new XmlDocument();
// document.Load(Server.MapPath((string)Session["ReportsXML"]));
document.Load(HostingEnvironment.MapPath("/Assets/XML/" + xmlFile.Replace("/","") + ".xml"));
//Create Navigator
XPathNavigator navigator = document.CreateNavigator();
//Load XSLT
XslCompiledTransform transformer = new XslCompiledTransform();
transformer.Load(HostingEnvironment.MapPath("/Assets/XSLT/FormatReports.xslt"));
//Transform XML Data
StringWriter output = new StringWriter();
transformer.Transform(navigator, null, output);
return output.ToString();
}
我读过关于尝试将单击事件绑定到我使用文本返回的html的文章,但在我尝试时它不起作用
感谢您最近的静态容器中的委托事件:
$('#ReportContent').on('click', '.Report', function () {
alert("hi");
})
$("#ReportContent").on('click',".Report",
function () {
alert("hi");
});