刷新后在输入选择中保存选项

时间:2015-09-08 10:43:48

标签: javascript jquery

我已经使用javascript创建了一个函数,可以在输入选择中添加一个选项,如果它不存在则通过选择其他选项但刷新后添加的选项消失我想在刷新后保留它,但我不会如果有人能帮忙,我知道该怎么做才会感激不尽

4 个答案:

答案 0 :(得分:0)

如果没有任何可以在某处保存选项的后端并且从保存的选项中填充选择选项列表,则不可能。

为此,您必须从数组或类似的东西填充您的选择框选项。然后,当您使用jquery向选择框添加选项时,您必须更新数组。刷新后,您将看到正确的新选项。

答案 1 :(得分:0)

您也可以使用localStorage。填充输入时,保存它。当您要绘制输入时,检查localStorage是否有数据,并预先填充

答案 2 :(得分: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;
}

答案 3 :(得分: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);"
     )
      ); ?>