2012-06-27 71 views
0

我的PHP頁面變量可以使用jQuery進入隱藏的PHP頁面嗎?

<ul id="upvote-the-image"> 
<li><a href="javascript:return false;" rel="50" id="upvote">Upvote</a><img src="image.png" /></li> 
</ul>​ 

目前成功發送變量的JavaScript

$("#upvote").each(function(index) { 
var upthis = $(this).attr("rel"); 
var plusone = upthis; 
$.post("upvote.php", { 
    'plusone': plusone 
}); 
alert(plusone); 
});​ 

(中碼警報是用於測試) 我使用rel標籤多張圖片。我希望每個人都能夠被提升,並顯示他們已在頁面上投票,而無需加載新頁面。

我的問題和問題:我的下一步是什麼?我只想知道如何發送一個值upvote.php。我知道如何使用mysql來添加upvote,而不是如何向upvote.php發送值,或者即使我的javascript代碼正確打開頁面。

感謝

+0

你已經發送了一個鍵/值對upvote.php,使部分問題難以理解。你必須改變重複ID的類,不能在頁面重複ID – charlietfl

回答

0

我想你需要的東西是這樣的:

<ul id="upvote-the-image"> 
    <li><span rel="50" id="upvote">Upvote</span><img src="image.png" /></li> 
</ul>​ 
<span id="result"></span> 

$("#upvote").click(function(index) { 
    var upthis = $(this).attr("rel"); 
    var oOptions = { 
url: upvote.php, //the receiving data page 
    data: upthis, //the data to the server 
    complete: function() { $('#result').text('Thanks!') } //the result on the page 
    }; 
    $.ajax(oOptions); 
} 

你不需要錨,我改成了一個跨度,您可以用F12 ASYC連接測試在瀏覽器中

+1

需要發送鍵/值對服務器...不只是價值 – charlietfl

0

你的javascript永遠不會打開php頁面,它只是向它發送數據,並收到一個帶有響應的http頭。你的php腳本應該注意$_POST['plusone']並相應地處理數據庫處理。您的下一步是在您的$.post函數中寫回調函數,我建議在學習時更改爲完整的ajax函數,因爲它更容易理解並查看所發生的所有事情。

$.ajax({ 
type: 'POST', 
url: "upvote.php", 
data: {'plusone': plusone}, 
success: function(IDofSelectedImg){ 
    //function to increment the rel value in the image that was clicked 
     $(IDofSelectedImg).attr("rel")= upthis +1; 
     }, 

}); 

您將需要爲每個img元素的一些唯一標識符以選擇它,併發送它的ID PHP腳本。爲upvote添加一個類而不是id,並使該id成爲您需要增加rel值時可以使用jquery定位的唯一標識號碼。 (從它的外觀看來,它看起來像是將rel屬性中的值放入舊值的數據庫中)。

+0

你不解釋'plusone'來自哪個問題的另一半...... – Sammaye

+0

看到他原來的帖子...並停止跟蹤我。 –

+0

我沒有跟蹤你,我試圖幫助你做出更好的答案,但是...... – Sammaye

0

這裏提供了一個很好的JQuery編程技巧,不要這樣做:

<a href="javascript:return false;" 

而是做這樣的事情:

$(function(){ 
    $('#upvote').on('click', function(event){ 
     event.preventDefault(); 
     $.post('upvote.php', {'plusone': $(this).attr('rel')}, function(data){ 
      alert('done and upvoted'); 
     }); 
    }); 
}); 

這是一個更好的方式來處理您的DOM文檔鏈接。

下面是一些文件的網頁供您閱讀有關編碼使用:

那些會解釋我的代碼給你。

希望它有幫助,

相關問題