如何执行PageMethod返回的javascript
How to execute javascript returned from PageMethod
我有一个页面,在那里我对PageMethod
进行了ajax调用,结果我得到了一些html字符串,我需要将其附加到一些div中。现在html字符串中有一些javascript代码,所以我希望在将html附加到div后执行这个js代码。但问题是,我收到了一个错误,说-Microsoft JScript runtime error: Access is denied.
,当globalEval方法试图执行时会抛出这个错误。
这是我做的一个ajax调用
var data ={id: id};
$.ajax({
type: "POST",
url: "/srv/Loader.aspx/LoadUserControl",
contentType: "application/json; charset=utf-8",
data: JSON.stringify(data),
dataType: "json",
success: function (data) {
$('#TargetDivID').html(data.d);
},
error: function (error) {
$('#TargetDivID')..html("Control can not be loaded");
console.log("LOG: Exeption trying to load Control:'n" + error.responseText);
}
});
以下是WebMethod返回的Html:
<div class="someclass" id="inHouseAdModule" style="display:none;">
Some Html Content
<script type="text/javascript">
$(document).ready(function () {
Some logic goes here
});
</script>
</div>
有什么想法我该怎么解决吗?
编辑:
<div class="someclass" id="inHouseAdModule" style="display:none;">
Some Html Content
<script type="text/javascript">
Some logic goes here
</script>
</div>
不起作用
编辑:我在JS代码的开头添加了调试器,但在到达该点之前抛出了异常。
<script type="text/javascript">
debugger;
Some logic goes here
</script>
搜索错误后,普遍认为您的请求中可能有一个不正确的URL。如果web方法接受GET,请尝试点击浏览器中的URL以确保它是正确的。此外,您可以使用浏览器的开发工具检查网络流量,以确保您的请求和响应具有预期的标头。
=============================================
另外
文件可能已经准备好了。将HTML更改为以下内容可立即执行JavaScript。
<script type="text/javascript"> /*Some logic goes here*/ </script>
如果以后需要再次调用它,请保留函数包装器,并在函数声明之后立即调用它。
<script type="text/javascript"> function MyFunc() { Some logic goes here } MyFunc(); </script>
=============================================
的一种替代方法
我建议您不要通过AJAX加载动态创建的内容并尝试将其注入页面,而是使用指向返回动态装箱内容的URL的HTMLIFRAME。这是广告内容的常见方法。
相关文章:
- 节点导出返回一个空对象
- ES6构造函数返回基类的实例
- 监视函数从服务返回不起作用,但作用域函数起作用
- 控制台返回var不是't定义,但它是
- 从函数返回角度承诺
- Javascript返回值只在循环中返回一次
- 从控制器返回后Ajax启动事件激发
- CKFinder 3为所选文件返回错误的URL
- 如何在d3.js中返回路径的y坐标
- 如何从jquery函数返回变量
- Angular js-返回一个包含类似
- JSONP请求返回结果,但也触发error_callback
- 如何使用Spring MVC将Facebook返回的响应数据保存在Java类中
- 从HTTPGET返回一个自定义对象列表,以便在Angular 2应用程序中使用
- JS验证ajax返回的html中的表单数据
- 使用谷歌应用程序脚本将服务器端数据表返回到客户端
- AJAX:$_GET不返回任何值
- 从Javascript方法返回全局变量
- 如何执行PageMethod返回的javascript
- 未在Firefox中执行PageMethod的返回函数