我想傳遞一個參數從阿賈克斯後到perl,但perl的只是不能看到它... ...從阿賈克斯後傳遞參數的Perl不工作
HTML:
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
$("input").keyup(function(){
txt=$("input").val();
$.post("search1.pl",{suggest:txt},function(result){
$("span").html(result);
});
});
});
</script>
</head>
<body>
First name:
<input type="text" />
<p>Suggestions: <span></span></p>
</body>
</html>
的Perl:
#!/usr/bin/perl
use CGI;
my $q = CGI->new;
my $txt = $q->param('txt');
print "Content-type: text/html\n\n";
print "txt=$txt<br>";
print "HAHA1<br>";
print "HAHA2<br>";
輸出:
建議:TXT =
HAHA1
HAHA2
我期待看到名爲 「txt =」 有我在輸入框中
任何線索進入?
提交的參數的名稱是'suggest',不'txt'。 – friedo
同時加上'use strict;使用警告;'到Perl的頂部。他們將幫助您調試後續問題。 – friedo
**危險**:此代碼[易受XSS影響](https://www.owasp.org/index.php/Cross-site_Scripting_(XSS))。用戶輸入需要在插入HTML文檔之前進行轉義! – Quentin