从WebBroker应用程序输出Javascript的问题

时间:2011-05-26 15:47:03

标签: javascript delphi webbroker

我有一个使用Delphi(2009)Web Broker构建的相当简单的Web应用程序。我正在尝试(并且失败)将Javascript输出到页面。

我需要输出的javascript位于<form>标记的页面正文中,如下所示:

<script>DateInput('mydatefield', true, 'DD-MM-YYYY');</script>

这个javascript应该创建一个漂亮的日期输入控件(在手工制作的HTML页面中测试好)。我的Delphi应用程序中的代码是:

Response.Content := Response.Content + '<script>DateInput(''mydatefield'', true, ''DD-MM-YYYY'');</script>';

正在从最终输出中删除脚本标记。

作为测试,我添加了一个HTML按钮,其中onClick事件设置如下:

Response.Content := Response.Content + '<input type="button" onClick="alert(''Hello World'')" Value="Hello World"/>';

并且检查页面的来源

alert(''Hello World'')

已成为

alert(&#39;Hello World&#39;)

我想知道这个单引号的翻译是否来自&#39;可能导致我的早期脚本标记被删除?

感谢任何帮助/指示,谢谢。

* 编辑

我应该指出,即使使用&#39;字符,警报弹出窗口也能正常工作。

* 编辑

我曾尝试使用JQuery脚本,如$(document).ready(function(){etc});并且它正在工作,所以我猜问题不在于WebBroker输出。感谢所有花时间阅读/思考的人。

1 个答案:

答案 0 :(得分:2)

尝试HTMLEncode单元HTTPApp:

Response.Content := Response.Content + HTMLEncode('...');