2013-06-18 22 views
-4

下面是一個代碼:JQuery的不保存我的數據

function go(k){ 
    alert("ok"); 
    $("#content_left_2").css({"background-color":"red"}); 
    alert("good"); 
} 

當我按下此短信「OK」出現,它改變顏色爲紅色後,但警報之後的「好」來它自敗,所有我的文字顏色再次變成綠色。

<div class="left-side" id="content_left_2"><a class="left-side1" href="http://localhost/codeigniter/index.php/project/main" onClick="go(2)">Досуг и спорт</a><br/></div> 

當我HREF跟着我去這個代碼:

<?php 
require 'shablon.php'; 
?> 

shablon.php是代碼,我用我的jQuery的

+0

JavaScript不保存狀態。這將是一個巨大的安全漏洞,因爲它在客戶端運行。 (除非你想使用cookies或者一些HTML5的花式存儲API,但是這段代碼絕對不包括這些) – SomeShinyObject

+1

爲什麼當你有jQuery和(沒有jQuery的事件)時,可以使用簡單,直觀的JavaScript事件處理,你在用'onclick'嗎? –

回答

2

你不能阻止默認動作在你的功能,所以頁面重新加載。

這樣做:

function go(k){ 
alert("ok"); 
$("#content").css({"background-color":"red"}); 
alert("good"); 
// return false here to prevent the link being followed. 
return false; 

}

+0

你不明白你寫的沒有工作,當我按照我的href,在這個PHP,我跟着代碼我需要PHP代碼,應該修改 – user1979221

+1

掃管笏?笏?笏? ? – FlavorScape

0

當用戶點擊a元素,頁面將主要採取的是鏈接,無論您是否希望與否。

由於您使用jQuery,分配事件處理程序,以幫助您這是很容易:

function go(k){ 
    alert("ok"); 
    $("#content").css({"background-color":"red"}); 
    alert("good"); 
} 

$('.left-side1').click(function(e) { 
    e.preventDefault(); 
    go(2); 
}); 

jsFiddle

+0

非常感謝,但它不起作用 – user1979221

0

的點擊數處理函數必須返回false,以防止默認動作,在這種情況下,加載href尋址的頁面。當瀏覽器刷新

<div class="left-side" id="content_left_2"><a class="left-side1" href="http://localhost/codeigniter/index.php/project/main" onClick="return go(2);">Досуг и спорт</a><br/></div> 

function go(k){ 
    alert("ok"); 
    $("#content_left_2").css({"background-color":"red"}); 
    alert("good"); 
    return false; 
}