2016-11-16 86 views
0

form.php的如何动态创建使用JQuery选择选项?

echo("<div id='myDv'>"); 
echo("<select id='mySelect'>"); 
    echo("<span id='mySpan'>"); 

     //here I want dynamically generated option values 

    echo("</span>"); 
echo("</select>"); 
echo("</div>"); 

myJquery.js

$.post('Process.php', $(this).serialize(), function(data){ 

     $('#mySpan').html(data);// I tried, but does'nt work 

}).fail(function() {alert("Some Problem Occured");}); 

Process.php

$strSql="SELECT Id, Title FROM mytable"; 
$result=mysql_query($strSql); 
while($rowSet=mysql_fetch_array($result)) { 
    echo("<option value=".$rowSet['Id'].">".$rowSet['Title']."</option>"); 
} 

我的要求是使用标识标题在Process.php中获取,以创建将显示在Form.php中的选择选项。

我的代码需要什么修改? 我怎样才能访问$行集Process.php在myJquery.js,创造了选择的选项,我想在form.php的显示

+0

每次你在新的使用[了'mysql_'(http://stackoverflow.com/questions/12859942/why-shouldnt-i-use-mysql-functions-in-php) 数据库扩展代码 ** [小猫被勒死在世界的某个地方](http://2.bp.blogspot.com/-zCT6jizimfI/UjJ5UTb_BeI/AAAAAAAACgg/AS6XCd6aNdg/s1600/luna_getting_strangled.jpg)**它被弃用,并已多年,并在PHP7中永远消失。 如果您只是学习PHP,请花些精力学习'PDO'或'mysqli'数据库扩展。 [从这里开始](http://php.net/manual/en/book.pdo.php) – RiggsFolly

+0

为什么你不只是json编码从服务器端的数据然后把它放回选择onchange事件的jquery或JavaScript 。 –

回答

0

服务器端处理

文件名称:Process.php

首先,我们使用相同的查询中获取数据,你在上面

编写
$data=array(); 
$strSql="SELECT Id, Title FROM mytable"; 
$result=mysql_query($strSql); 
while($rowSet=mysql_fetch_array($result)) { 
    $option=array("id"=>$rowSet["Id"],"Title"=>$rowSet["Title"]); 
    $data[]=$option; 
} 
echo json_encode($json_data); 

客户端处理 我使用jQuery和它的变化event.I正在循环JSON编码数据,以从中提取标识和名称。

<select id="getOptions"></select> 
    <script> 
    $("#getOptions").change(function(e){ 
    $.ajax({ 
     url:"Process.php", 
     success:function(data){ 
     console.log(data); 
     for(var i=0;i>=data.length;i++){ 
     $("#getOptions").append("<option value='"+data[i]["Id"]+"'>"+data[i]["Title"]+" </option>"); 
     } 
     }, 
    error:function(err){ 
    alert(err); 
     } 
    }); 
}); 
    </script>