2016-11-16 89 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>