2011-03-29 77 views
0

試圖發佈一個表單與jquery和響應數據是從當前頁面的html,而不是函數中指定的網址。表單.post與jQuery的響應返回相同的頁面

<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協議從一個類似的問題AUTO爲URI_REQUEST,但我沒有使用CodeIgnitor或任何其他框架。

我已經基本上剝離了頁面上的所有內容,只是使用上面的表單和jquery(vote.php僅打印出$ _POST變量 - 也用$ _REQUEST嘗試過)。

基本上我很難過。有什麼想法嗎?

回答

0

你有沒有試過alert($form.attr("action"))只是爲了確保你得到正確的東西?還要用你的瀏覽器投票.php?

+0

我沒有 - 試着用alert($(this).attr(「name」));它正在爲click事件工作。然後你的評論讓我想在.post中用$(「。vote_form」)替換$ form變量,它工作得很好!謝啦。新鮮的眼睛走了很長的路! – hellodolly 2011-03-29 03:59:20

相關問題