0
在此测试中,我有一个带有两个字段的简单表单。当用户在选择字段中选择一个选项时,我需要上传文本字段。当更改选择字段的值时更新文本字段
这是HTML代码:
<form id="form1" name="form1" method="post" action="">
<input type="text" name="dst" id="dst" value="" />
<select name="contactos" id="contactos">
<option value="-1">No selected</option>
<option value="1">Option 1</option>
<option value="2">Option 2</option>
</select>
</form>
这是jQuery代码:
<script>
$(document).ready(function() {
$("#contactos").change(function(event){
var id = $("#contactos").find(':selected').val();
$.getJSON('contacback.php?contactoID='+id, function(data) {
$.each(data, function(i,item) {
if (item.field == "dst") {
$("#dst").val(item.value); }
});
});
});
});
</script>
(添加)这是PHP代码:
<?php require_once('Connections/cnx3.php'); ?>
<?php
$colname_rsContactos = "-1";
if (isset($_GET['contactoID'])) {
$colname_rsContactos = $_GET['contactoID'];
}
mysql_select_db($database_cnx3, $cnx3);
$query_rsContactos = sprintf("SELECT contactoID, telefono FROM contactos WHERE contactoID = %s",
GetSQLValueString($colname_rsContactos, "int"));
$rsContactos = mysql_query($query_rsContactos, $cnx3) or die(mysql_error());
while ($fila = mysql_fetch_array($rsContactos)) {
$json = array('field' => 'dst',
'value' => $fila['telefono']);
}
echo json_encode($json);
mysql_free_result($rsContactos);
?>
查询到PHP发送OK并且JSON回答也是OK image of JSON reply
但是#dst的值没有更新。任何帮助,欢迎!
我们可以看到PHP? – Alex 2010-11-19 06:11:17
很抱歉给你这样做,但我们是否也可以看到一些返回的JSON?另外,你真的打算在jQuery中的每一个?如果你只是在寻找一个特定的领域,你可以自己挖掘JSON而不是迭代它。 – attack 2010-11-19 08:22:56
你有JQ初始化为jQuery对象吗?据我所知,jQuery或$默认情况下用于访问jQuery,而不是JQ ... – 2010-11-19 09:36:22