這似乎對你們來說很容易,但我在jquery和ajax中有點新鮮。我到處尋找,幾個小時都無法解決問題。我的問題如下:jquery切換替代,無法理解這裏發生了什麼
我有類名稱的HTML鏈接跟隨
<a href="#" class="follow"> {if $is_following == 0} follow {else} following {/if} </a>
的if-else語句僅僅是一個智者模板引擎的使用。這很簡單。如果用戶關注其他用戶,則顯示'follow'值,否則顯示'following'值。
我的jquery如下;
var $values;
$('.follow').mouseover(
function()
{
$values = $(this).html();
if($values == 'following')
{
$(this).html('unfollow');
}
}
);
$('.follow').mouseout(
function()
{
$(this).html($values);
}
);
$('.follow').toggle(
function(){
$(this).html('following');
$values = "following";
},
function(){
$(this).html('follow');
$values = "follow";
}
);
//follow ajax call
$('.follow').click(function(){
var $op = $(this).html();
var $other_profile_id = $('#other_profile_id').text();
if($op == 'follow')
{
$.ajax({
type : 'POST',
url : 'ajax_service.php',
dataType : 'json',
data: {
op : $op,
other_profile_id : $other_profile_id
},
success : function(data){
},
error:function (error){
console.error(error.responseText);
}
});
}
else if($op == 'unfollow')
{
$.ajax({
type : 'POST',
url : 'ajax_service.php',
dataType : 'json',
data: {
op : $op,
other_profile_id : $('#other_profile_id').text()
},
success : function(data){
},
error:function (error){
console.error(error.responseText);
}
});
}
});
編輯:根據答案,我需要解釋的功能;
- 如果沒有遵循用戶,鏈接將顯示'follow'值。
- 如果用戶已經遵循,則會顯示'following'值,當鼠標懸停在鏈接上時,它應該觸發mouseover事件。
- 如果鼠標懸停在鏈接上並且該值爲'跟隨',則鏈接值應爲'unfollow'。
- 如果鼠標不在鏈接上,它應該再次顯示值'follow'。
- 如果用戶未被遵守,它會在鏈接上顯示'follow'值。
我不想使用切換事件。因爲切換隻抓住第一次和第二次點擊。我需要一個if語句來控制鏈接值是跟隨還是跟隨。
此外,如果用戶關注,它會顯示以下值,但mouseover事件不起作用。你能解釋我爲什麼嗎?我無法理解這裏發生了什麼。
任何建議或幫助將不勝感激。
P.S:如果我刪除切換事件並控制ajax調用中的鏈接值,它根本不起作用。
此外,我想分配不同的鏈接ID鏈接和處理他們分開。但是,我認爲這是錯誤的方式。
當我更改$(this).html();它不改變任何東西。到$(this).text(); – aacanakin 2012-02-14 13:54:40
我添加了功能來提問。 – aacanakin 2012-02-14 13:58:58
這是我想要的,但我有一個問題。是發佈數據也轉換爲json或不? – aacanakin 2012-02-15 09:16:21