jQuery如何在页面重载时保留动态创建列表的选定选项

jQuery how to keep selected option for dynamically created list on page reload

本文关键字:列表 创建 动态 选项 保留 重载 jQuery      更新时间:2023-09-26

得到一个使用javascript填充的选择列表,每次页面重新加载时,该列表都会重置。并且用户选择的选项丢失,但是对于所有其他输入选项,例如单选按钮、复选框或文本字段,没有数据丢失。

//example of dynamcially generated options for a dropdown list
<p id="question">How old are you (in years)?</p>
<select id="q1" name="age" style="width:157px;"></select>
<script language="Javascript"> initializeAgeList("Select Your Age",100); </script> 
//example of static options for a radio button set
<p id="question">Are you male or female?</p>
<input type = 'radio' name ='q3' value= 'male' required>Male<BR>
<input type = 'radio' name ='q3' value= 'female'>Female 

尝试使用全局var来确定列表是否已经设置,但事实证明不起作用

 var isAgeSet = false; //global var
 function initializeAgeList(default_selection,limit ){
     if(!isAgeSet){ //checks to see if list has already been set, on page refresh is set to zero
         var i = 0;
         while (i <= limit){ //adds options until limit is reached
              if(i==0){
                  $("#q1").append(new Option(default_selection,i));
              }else{
                  $("#q1").append(new Option(i,i));
              }
              i++;
          }
          isAgeSet = true;
      }
 };

如何使用jQuery防止用户在下拉列表中选择的选项丢失?

听起来您希望在页面回发之间持久化数据。您应该保存您选择的数据,并在页面加载时读取(如果有保存的数据)。数据可以保存到服务器(数据库/文件)或客户端(本地存储)。

希望这是你所需要的。。。

Yaniv