使用perl去实现ajax功能

alphajin 2008-10-31 01:57:58
其实只要完成后半功能就可以,也就是如何把结果通过xml传回来

需求是这样的,我需要检查用户名。
在首页上面通过ajax技术sendRequest到一个用perl编写的CGI上面。

问题在于如何通过perl把处理的结果传回给首页。

我原来是用jsp知道可以用Java的一些功能把结果传回来,但是现在用perl就不知道该怎么传了

哪位大侠帮帮小弟,最好有code,谢谢啦!
...全文
136 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
alphajin 2008-11-05
  • 打赏
  • 举报
回复
似乎我得回来的还是空,看来问题不在HTML这边

可能在我的perl程序那边

mrshelly 2008-11-05
  • 打赏
  • 举报
回复
为兼容浏览器.建议使用 jQuery 这样的 js 库去操作.


<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$.ajax({
type: "GET",
url: "test.cgi?o=xml&t="+Math.random(),
dataType: ($.browser.msie) ?"text":"xml",
success: function(xml) {
if($.browser.msie){
var xmlObject = new ActiveXObject("Msxml.DOMDocument");
xmlObject.async = false;
xmlObject.loadXML(xml);
alert(''+$(xmlObject).find('msg').text());
}else{
alert(''+$(xml).find('msg').text());
}

}
});
</script>
lupanlupan 2008-11-04
  • 打赏
  • 举报
回复
我顶一下
alphajin 2008-11-04
  • 打赏
  • 举报
回复
为什么我用这样的code,总是报错呢?

var res=XMLHttpReq.responseXML.getElementsByTagName("msg");
var x = res[0].firstChild.data;
if( x == "true"){
alert("TRUE");
}else if(x ==0){
alert("FALSE");
}

错误是object required


mrshelly 2008-11-01
  • 打赏
  • 举报
回复

HTML 部分

普通的AJAX请求..

请求完毕后,获取 cgi(perl) 的输出.如果 root msg 为 true 表明检查成功. false 表明失败.




#!/usr/local/bin/perl
#
print "Content-type: text/xml\n\n";
#

# 这里写你的用户检查逻辑
# 设置一个 $checkResult

$checkResult = "true";
# 输出

print "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>\r\n";
print "<root>\r\n";
print "<msg>$checkResult</msg>\r\n";
print "</root>\r\n";

52,782

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Ajax
社区管理员
  • Ajax
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧