2012-05-22 46 views
2

我使用JTable中(http://www.jtable.org),而是創建一個組合框(下拉菜單)的選項之一是這樣的:使用jQuery與jQuery的jtables?

Branch: { 
    title: 'Branch', 
    type: 'list', 
    options: { 
     '1': 'Auckland', 
     '2': 'Queensland' 
    } 
} 

我希望能夠使用MySQL查詢(JSON'ed?)爲我的「選項」,而不是硬編碼。有任何想法嗎?

回答

0

我要做的就是在PHP端我查詢一切,把它變成一個數組,然後回顯到JavaScript頁面:

  Branch: { 
       title: 'Branch', 
       type: 'list', 
       options: <?php echo json_encode($branchArray)?> 
      } 
1

使用PHP的json_encode與mysql_fetch_array

PHP

while($row = mysql_fetch_array($query)) { 
    $options[$row['id']] = $row['name']; 
} 

$options = json_encode($options); 

JSON

Branch: { 
    title: 'Branch', 
    type: 'list', 
    options: <?=$options?> 
} 
+0

這樣做並不會加載頁面的所有..我甚至嘗試把<?php = $ options?>但仍然沒有..我檢查了PHP和echo'ed json,它顯示正常,但不知何故jquery插件拒絕加載。使用選項:<?php echo json_encode($ options)?>在jquery裏面,頁面加載,但插件沒有顯示json所顯示的選項 – marche

+0

好的,我終於能夠使用'<? PHP的回聲json_encode($選項)?>'只是忘了刪除我的包括評論..大聲笑 – marche

3
Branch:{ 
    title: 'Page Name', 
    width: '30%', 
    options: 'FieldNameLoader.php?action=Branch', 
    list :true 
} 

if($_GET["action"] == "Branch") { 


$result = mysql_query("SELECT * from tblPagelist ORDER BY PageName ASC;"); 
$rows = array(); 
while ($row = mysql_fetch_array($result)) { 
    $eil = array(); 
    $eil["DisplayText"] = $row[1]; 
    $eil["Value"] = $row[0]; 
    $rows[] = $eil; 
    } 
$jTableResult = array(); 
$jTableResult['Result'] = "OK"; 
$jTableResult['Options'] = $rows; 
print json_encode($jTableResult); } 
+0

恕我直言,這是更好的解決方案... – deval