dsk88199 2013-04-27 17:52
浏览 90
已采纳

在localStorage的select中添加选项值

I have a localStorage which has the following structure:

[{"id" : "1", "n" : "Ferrari testarrosa"},{"id" : "2", "n" : "Honda prelude"}......] 

I need fill in the select with options from this localStorage, to get:

     <option value='1'>Ferrari testarrosa</option>

PHP

    <?  require('pr13conecta.php');
$cadena="";
ini_set('display_errors',1); error_reporting(E_ALL);
  $cSQL="SELECT ID, CADENA FROM MASIVO;";
  $stmt=$oConni->prepare($cSQL) or die($oConni->error);
  $stmt->execute();                               
  $stmt->bind_result($id, $texto);
  while ($stmt->fetch()) {
      $cadena.='{"id" : "'.$id.'", "n" : "'.$texto.'"},';
  }  
  $stmt->close();
  echo $cadena;

JAVASCRIPT

       $.ajax({type: "POST",
       url: "pr13llenaSelect.php",
       success:function(data) {
           localStorage.setItem('selids','['+data+']');
           for (x=0; x<=localStorage.length-1; x++) {
               $('#selCadena').html("<option value="'+localStorage.getItem('selids')+'">"+localStorage.getItem('selids')+"</option>");
           }


       }
   })
  • 写回答

1条回答 默认 最新

  • dousi5501 2013-04-27 20:45
    关注

    This should get it working

    JAVASCRIPT

    $.ajax({
        type: "POST",
        url: "pr13llenaSelect.php",
        dataType : "json",
        success:function(data) {
            localStorage.setItem('selids',JSON.stringify(data));
            $("#selCadena").empty();
            $.each(JSON.parse(localStorage.selids),function(){
                var thisItem = this;
                $("#selCadena").append(
                    $("<option>").attr("value",thisItem.id).html(thisItem.n)
                );
            });
        }
    });
    

    Also would recommend to use json_encode in php code

    PHP

    <?  require('pr13conecta.php');
        $cadena=array();
        ini_set('display_errors',1); error_reporting(E_ALL);
        $cSQL="SELECT ID, CADENA FROM MASIVO;";
        $stmt=$oConni->prepare($cSQL) or die($oConni->error);
        $stmt->execute();                               
        $stmt->bind_result($id, $texto);
        while ($stmt->fetch()) {
           array_push($cadena,array("id" => $id, "n" => $texto);
        }  
        $stmt->close();
        echo json_encode($cadena);
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记