表单.post与jquery响应返回相同的页面

时间:2011-03-29 03:06:15

标签: php .htaccess jquery

尝试使用jquery发布表单,响应数据是当前页面中的html,而不是函数中指定的url。

<form name="vote_form" class="vote_form" action="vote.php"> 
    <input type="hidden" name="sid" id="sid" value="2056" />
    <input type="submit" name="up" id="up" value="Vote Up" />
    <input type="submit" name="down" id="down" value="Vote Down" /> 
</form>

这是jquery

$(document).ready(function() {  
$(".vote_form").submit(function() { return false; });
$("#up, #down").click(function(event) {
    $form = $(this).parent("form");
    $.post($form.attr("action"), $form.serialize() + "&submit="+ $(this).attr("name"), function(data) {
            $('#results').html(data);
        });
    }); 
}); 

如果此处存在问题,请参考.htaccess

Options +ExecCGI
AddHandler php-cgi .php .html .htm .xml
Action php-cgi /cgi-bin/php.cgi

<FilesMatch "^php5?\.(ini|cgi)$">
Order Deny,Allow
Deny from All
Allow from env=REDIRECT_STATUS
</FilesMatch>

#Options +Indexes
Options +FollowSymlinks

RewriteEngine On
RewriteBase /

我在这里阅读了一个类似的问题修复了将URL PROTOCOL从AUTO更改为URI_REQUEST,但我没有使用CodeIgnitor或任何其他框架。

我基本上从页面中删除了所有内容,只使用上面的表单和jquery(vote.php只打印出$ _POST变量 - 也尝试使用$ _REQUEST)。

基本上我很难过。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

你有没有试过alert( $form.attr("action") )只是为了确保你做对了?还可以使用浏览器访问vote.php吗?