2012-04-20 24 views
1
<div class="formfield ship"> 
    <input type="radio" class="ship1" name="1" >1</input> 
    <input type="radio" class="ship2" name="1" >2</input> 
    <input type="radio" class="ship3" name="1" >3</input> 
    <div class="clear"><!-- FLOAT CLEAR --></div> 
</div> 

我有單選按鈕必須有默認值..當我拿起一個,並提交,然後我回到頁面值必須保留..單選按鈕上重溫頁面選中的值

任何想法我怎麼能做到這一點?

+1

默認值是什麼?這些應該是其中之一被選中的標記?定義「返回到頁面」。如果你有服務器端代碼渲染頁面,它是否可以呈現它們提交狀態的元素? jQuery到哪裏來了? – David 2012-04-20 15:33:35

+0

您的HTML生成的服務器端,還是隻是一個靜態的HTML頁面? – 2012-04-20 15:33:40

+0

第一個單選按鈕已在頁面的第一次加載時被檢查。 – 2012-04-20 15:35:23

回答

1

這你想要做什麼 - 雖然你需要稍微修改您的HTML(我不認爲<input></input>有效)

http://jsfiddle.net/malet/dvCpj/6/

$("input[type=radio]").each(function(){ 
    $(this).click(function(){  
     createCookie($(this).attr("name"), $($(this).siblings()[0]).html(),1);  
    }); 
}); 


$(document).ready(function(){ 
    $("input[type=radio]").each(function(){ 
     var selected = readCookie($(this).attr("name")); 
     if(selected != null){ 
      if($($(this).siblings()[0]).html() == selected){ 
       $(this).attr("checked","checked"); 
      }      
     }  
    }); 
}); 


function createCookie(name,value,days) { 
    if (days) { 
      var date = new Date(); 
      date.setTime(date.getTime()+(days*24*60*60*1000)); 
      var expires = "; expires="+date.toGMTString(); 
    } 
    else var expires = ""; 
    document.cookie = name+"="+value+expires+"; path=/"; 
} 

function readCookie(name) { 
    var nameEQ = name + "="; 
    var ca = document.cookie.split(';'); 
    for(var i=0;i < ca.length;i++) { 
      var c = ca[i]; 
      while (c.charAt(0)==' ') c = c.substring(1,c.length); 
      if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length); 
    } 
    return null; 
} 

function eraseCookie(name) { 
    createCookie(name,"",-1); 
} 
​ 
+0

謝謝。得到它的工作。 – 2012-04-20 20:56:51

0

客戶端您會想要使用cookie來存儲信息。服務器端,你可以使用會話變量。

這取決於您的環境,但基本上是保存用戶提交的內容,並在輸出表單時檢查該值。

0

基本上沒有,你可以這樣做雙向的。

  1. 餅乾
  2. 服務器端語言如PHP,ASP

但無論哪種方式,主要的一點是,無線電元素的默認值必須改變。您可以使用服務器端腳本來提供新的默認值,或使用cookie來獲取新的默認值。