2015-05-09 24 views
0

我有一個從Mysql表讀取數據並將其顯示在HTML表中的php頁面。然後,我使用AJAX允許用戶更新數據,一次一行。對於文本字段,這工作正常。如何將HTML選擇合併到innerHTML中?

但是,對於某些列,我希望用戶從下拉列表中進行選擇,而不是輸入自由文本。

初始數據表具有下面的行來顯示當前事件字段:

echo "<td><div id=$event_id>$row[event]</div></td>"; 

我然後使用Javascript使一個字段修改這條線,用戶可以編輯:

document.getElementById(event_id).innerHTML = "<input type=text id='" +data_event + "' value='"+ event + "'>"; 

不限想法如何添加HTML選擇?

感謝

回答

0

假設你有你希望用戶選擇,你可以做一個DB-列 「事件類型」(INT):

$selectData = Array("first Choice","second Choice", "third Choice"); 
echo "<td><div id=$event_id>".$selectData[$row[eventtype]]."</div></td>"; 

在PHP

在腳本標籤中將$selectData寫入javascript對象:

var selectData = <?php echo json_encode($selectData) ?>; 

在您的修改中ing功能:

// you need to pass in the event_type as you did with data_event 
var options=""; 
for (i=0; i<selectData.length; i++) { 
    selected = (data_event_type == i) ? selected : ""; 
    options += "<option value=\""+i+"\" "+selected+">"+selectData[i]+"</option>"; 
} 
document.getElementById(event_id).innerHTML = "<select id='" +data_event + "'>"+options+"</select>;