2015-09-08 73 views
0

我已經做了一個JavaScript的功能,可以在輸入選擇添加一個選項,如果它不存在通過選擇其他選項,但刷新後添加消失後,我想刷新後保留它,但我不知道如何去做,如果任何人都可以幫助,我將非常感謝在刷新後輸入選擇保存選項

+1

請你能提供一些代碼,顯示你有什麼這麼遠嗎?這樣,質量的幫助提供可能會更好:) – ne1410s

+0

謝謝澄清我把下面的代碼與答案 – kimihi

回答

0

沒有任何後端可以保存你的選擇的地方,並從保存的選項填充後者的選擇選項列表是不可能的。

爲此,您必須從數組或類似的東西中填充選擇框選項。然後,當你使用jQuery添加選項到你的選擇框時,你必須更新數組。刷新後,您將獲得正確顯示的新選項。

0

您也可以使用localStorage。當你填充一個輸入時,保存它。而當你要繪製的輸入,檢查localStorage的有數據,並預填充它

0

您可以使用Cookie來保存值然後刷新

角度重新填充

angular.module('ddlChoiceExample', ['ngCookies']) 
.controller('ExampleController', ['$cookies', function($cookies) { 
    // Retrieving a cookie 
    var ddlChoice= $cookies.get('ddlChoice'); 
    // Setting a cookie 
    $cookies.put('ddlChoice', 'Option1'); 
}]); 

還是在JS

function getCookie(cname) { 
    var name = cname + "="; 
    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); 
     if (c.indexOf(name) == 0) return c.substring(name.length,c.length); 
    } 
    return ""; 
} 

function setCookie(cname, cvalue, exdays) { 
    var d = new Date(); 
    d.setTime(d.getTime() + (exdays*24*60*60*1000)); 
    var expires = "expires="+d.toUTCString(); 
    document.cookie = cname + "=" + cvalue + "; " + expires; 
} 
+0

你可以檢查我的代碼在ansewrs – kimihi

0

這裏是我的函數添加的選項中進行選擇:

 <script type="text/JavaScript"> function AjoutOptionAuSelect(this_select) { 
if (this_select.value == "autreVille") 
{ 
    var saisie; 
    var pass = false; 
    do 
    { 
    if (pass) alert("La valeur est incorrecte. Elle ne doit comporter que des lettres."); 

    saisie = prompt("Entrer la nouvelle valeur :"); 

    if (saisie == null) return false; 
    pass = true; 
    } 
    while (saisie.match(/[^a-z^éèàç]/i) && saisie != "") 

    this_select.options[this_select.length] = new Option(saisie, saisie, true, true); 

    for (var i=0; i < this_select.options.length; i++) 
    { 
    if (this_select.options[i].value == saisie) 
    { 
     this_select.options[i].selected = true; 

    } 
    } 
} }</script> 

和輸入選擇:

 <?= $this->Form->input('ville', 
     array(
     'label'=> false, 
     'options' => array('Casablanca'=>'Casablanca','Rabat'=>'Rabat', 'Fès'=>'Fès','Tanger'=>'Tanger','Marrakech'=>'Marrakech', 
     'Essaouira'=>'Essaouira','autreVille'=> 'autreVille'), 
     'class' => 'form-control ', 
     'id'=>'ville', 
     'onChange'=> "AjoutOptionAuSelect(this);" 
    ) 
    ); ?>