我有一个HTML文件,可以生成一个网页。用户可以在网页上输入一些评论。要保存注释,我使用JQuery / AJAX调用perl脚本。这将在DB中添加一行。
在添加记录后,在perl脚本内部,我再次获取相同的记录。现在我想在我的页面中显示该记录而不刷新页面。 (我知道我们可以在jquery中使用append)我的问题是如何将该记录从perl返回到HTML页面,包括HTML标签和所有。
这是添加新记录的部分。
<span class="requester">
<span>**message**</span>
</br>
<i> - **username** </i>
<button class="deleteResponse" id="id"> delete </button>
<hr>
</span>
消息和用户名是我将从MYSQL问题获得的项目。\
这就是我用来显示数据的方法。
$("#"+getpID+" textarea ").before(htmlcode).fadeIn();
和htmlcode是
var htmlcode = '<span class="requester"> <span>message</span> </br> <i> - username 0 seconds ago </i> <button class="deleteResponse" id="id"> delete </button> <hr> </span>';
我想要从perl脚本返回数据而不是htmlcode。 任何帮助将不胜感激。谢谢sapna
答案 0 :(得分:3)
您的Perl脚本需要打印您希望通过AJAX调用返回的数据。这是基本的CGI。
#!/usr/bin/perl
use strict;
use warnings;
use CGI;
my $cgi = CGI->new;
# do your database stuff here
my $result = "HTML CODE"; # this is your result
print $cgi->header('text/html');
print $result;
在你的AJAX call中,做一些像这样的事情(我从jQuery文档中解脱出来):
$.get('ajax/test.html', function(data) {
$("#"+getpID+" textarea ").before(data).fadeIn();
alert('Load was performed.');
});
请注意,我没有对此进行测试。