我在尝试从Mysql查询中填充editform中的select时遇到了一些问题。我正在阅读一些博客,但我找不到解决方案。下面我附上一些代码。
这是collmodel:
jQuery("#grid_pacientes").jqGrid({
url:'conec_paciente.php',
datatype: "json",
//loadonce: true,
//
colNames:['id','Nombre','Apellido','Telefono','Obra Soc'],
colModel:[
{name:'id_paciente',index:'id_paciente', width:40, sorttype:'int'},
{name:'nombre',index:'nombre', width:100,editable:true,editoptions:{size:10},resizable:false, sorttype:'text'},
{name:'apellido',index:'apellido',width:100, editable: true,resizable:false, sorttype:'text'},
{name:'telefono',index:'telefono',width:100, editable: true,resizable:false, sorttype:'int'},
{name:'id_obra',index:'id_obra',width:100, editable: true,resizable:false, sorttype:'int',edittype:"select"
}
],
最后一个coll(id_obra)是我需要填写的那个。
这是我执行MySql查询的php页面:
<?php
include_once 'lib.php';
$conexion= mysql_connect($dbhost, $dbuser, $dbpassword);
mysql_select_db($database, $conexion);
$result = mysql_query("SELECT id_obra, nombre
FROM obras", $conexion) or die(mysql_error());
$i=0;
while($row = mysql_fetch_array($result,MYSQL_ASSOC)) {
$responce->rows[$i]['id']=$row["id_obra"];
$responce->rows[$i]['cell']=array($row["id_obra"],$row["nombre"]);
$i++;
}
echo json_encode($responce);
?>
所以...这是所有的代码,我认为我需要一个函数,但我不知道该怎么做。 提前谢谢,对不起我的英文
答案 0 :(得分:2)
感谢您的帮助。我找到了解决方案 这是我在你告诉我的http://url_where_data_will_be_gathered中输入的代码:
<select>
<?php
include_once 'lib.php';
$conexion= mysql_connect($dbhost, $dbuser, $dbpassword);
mysql_select_db($database, $conexion);
$result = mysql_query("SELECT id_obra, nombre
FROM obras", $conexion) or die(mysql_error());
$i=0;
while($row = mysql_fetch_array($result,MYSQL_ASSOC)) {
?>
<option value ="<?php echo $row['id_obra'] ?>"><?php echo $row['nombre'] ?></option>
<?php } ?>
</select>
答案 1 :(得分:0)
@nacho
如果你想动态获取下拉选项,你必须指定参数“editoptions-&gt; dataInit”,以便让jqGrid知道从哪里获取数据。
{
name:'id_obra',
index:'id_obra',
width:100,
editable: true,
resizable:false,
sorttype:'int',
edittype:"select",
edioptions:{
dataUrl: "http://url_where_data_will_be_gathered"
}
}
注意添加了editoption对象。
来自http://url_where_data_will_be_gathered网址的返回数据必须采用以下格式:
<select>
<option value='1'>One</option>
<option value='2'>Two</option>
</select>
锄头帮助你。