В этом тесте у меня простая форма с двумя полями. Мне нужно переместить текстовое поле, когда пользователь выбирает параметр в поле выбора.Обновление текстового поля при изменении значения поля выбора
Это 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 отправляется ОК, а ответ JSON также соответствует image of JSON reply
Но значение #dst не обновляется. Любые подсказки приветствуются!
Можем ли мы увидеть PHP? – Alex
Прошу прощения за это, но можем ли мы увидеть немного JSON, который возвращается? Кроме того, вы действительно намереваетесь каждый в jQuery? Если вы ищете только конкретное поле, вы можете просто копаться в JSON самостоятельно, а не перебирать его. – attack
У вас есть JQ, инициализированный как объект jQuery? насколько я могу судить, jQuery или $ используется по умолчанию для доступа к jQuery, а не JQ ... –