繁体   English   中英

在用户控件中执行JavaScript

[英]Executing JavaScript Within a User Control

我正在尝试创建一个ASP.NET用户控件,该控件将在给定提要URL的情况下加载指定的RSS提要。 理想情况下,我想将所有内容都包裹在用户控件中,以便可以将其轻松放入页面,设置供稿URL并使用它来完成。 我正在使用jQuery AJAX来保持页面的响应速度。 这是我开始使用的最简单的骨架:

在ASP.NET Web表单内:

<div>
    <ResellerViewControls:RssFeedListAjax FeedUrl="http://www.samplelist.com/rss/" />
</div>

用户控件的内脏:

<%@ Control Language="C#" ClassName="RssFeedListAjax" %>

<script runat="server">
    public string FeedUrl { get; set; } 
</script>
<script type="text/javascript">
    jQuery(document).ready(function () {
        alert('Loading...');
        parseRSS('<%= FeedUrl %>', showResult);
    })();

    function parseRSS(url, callback) {
        $.ajax({
            url: document.location.protocol + '//ajax.googleapis.com/ajax/services/feed/load?v=1.0&num=10&callback=?&q=' + encodeURIComponent(url),
            dataType: 'json',
            success: function(data) {
                if (callback) {
                    callback(data.responseData.feed);
                } else {
                    throw Error("No callback function provided");
                }
            }
        });
    }

    function showResult(data) {
        $('#RssFeedList').innerText = data;
    }
</script>

<div id="RssFeedList">
</div>

Web表单的母版页包含对所有必要jQuery内容的引用。 使用FireFox开发人员工具浏览页面时,我无法在任何地方找到实际用户控件的javascript。 我想它没有被渲染。

非常感谢您提供帮助或类似工作。

h 再次浏览之后,我意识到我忽略了一个关键的事情:用户控件上的'runat = server'属性。 做到了。

停止 PHP 执行<!--? within javascript</div--><div id="text_translate"><p> 我正在尝试实现 TinyMCE,它在我的测试平台上运行良好,但在生产服务器上,PHP 正在尝试执行一些'&lt;?' tiny_mce.js文件中的标签。</p><p> 我有一个名为html_editor.php的文件,它被引入到需要使用include_once的每个表单中。 在html_editor内,我有以下内容:</p><pre> &lt;script type="text/javascript" src="/Public/TinyMCE/tiny_mce.js"&gt;&lt;/script&gt;</pre><p> 随后是 Tiny MCE 初始化,但它在该行上因unexpected T_CONSTANT_ENCAPSED_STRING 。 我用tiny_mce_src.js替换了脚本文件,以找到导致问题的确切代码,它是:</p><pre> html.push('&lt;?', name, ' ', text, '?&gt;');</pre><p> 我在tiny_mce_src.js中用双引号交换了单引号,这确实解决了问题,但在缩小的代码中,它们已经是双引号了。</p><p> 这显然是我的测试服务器和生产服务器之间与 PHP 的配置差异,但我无法追踪是什么。 我正在使用 PHP 5.3 进行测试,并且服务器正在运行 5.2。</p></div>

[英]Stop PHP executing <? within javascript

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 Web用户控件中Javascript的ReferenceError HTML中的JavaScript无法执行 在PHP中执行javascript 在用户控件.NET 1.1中调用javascript方法 JavaScript 未在 .NET WebBrowser 控件中执行 自执行 function 用于 javascript 控制 用户控件-从JavaScript调用vb链接按钮的(在用户控件内)click事件 在函数中执行javascript函数 从iframe中执行javascript 停止 PHP 执行<!--? within javascript</div--><div id="text_translate"><p> 我正在尝试实现 TinyMCE,它在我的测试平台上运行良好,但在生产服务器上,PHP 正在尝试执行一些'&lt;?' tiny_mce.js文件中的标签。</p><p> 我有一个名为html_editor.php的文件,它被引入到需要使用include_once的每个表单中。 在html_editor内,我有以下内容:</p><pre> &lt;script type="text/javascript" src="/Public/TinyMCE/tiny_mce.js"&gt;&lt;/script&gt;</pre><p> 随后是 Tiny MCE 初始化,但它在该行上因unexpected T_CONSTANT_ENCAPSED_STRING 。 我用tiny_mce_src.js替换了脚本文件,以找到导致问题的确切代码,它是:</p><pre> html.push('&lt;?', name, ' ', text, '?&gt;');</pre><p> 我在tiny_mce_src.js中用双引号交换了单引号,这确实解决了问题,但在缩小的代码中,它们已经是双引号了。</p><p> 这显然是我的测试服务器和生产服务器之间与 PHP 的配置差异,但我无法追踪是什么。 我正在使用 PHP 5.3 进行测试,并且服务器正在运行 5.2。</p></div>
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM