2010-11-19 16 views
0

このテストでは、2つのフィールドを持つ単純なフォームがあります。ユーザーが選択フィールドでオプションを選択したときに、テキストフィールドを更新する必要があります。選択フィールドの値を変更するときのテキストフィールドの更新

これは、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の値は更新されません。どんな助けも歓迎です!!

+0

は、我々は、PHPを見ることはできますか? – Alex

+1

申し訳ありませんが、戻ってきているJSONのビットが表示されますか?また、実際にjQueryのそれぞれを意図していますか?特定のフィールドだけを探しているのであれば、繰り返し処理するのではなく、JSONを自分で調べることができます。 – attack

+0

JQをjQueryオブジェクトとして初期化しましたか? jQueryや$はjQueryではなくjQueryにアクセスするためにデフォルトで使用されています。 –

答えて

0

(。。質問の編集、コメントで回答コミュニティのwikiの答えに変換Question with no answers, but issue solved in the comments (or extended in chat)を参照してください)

OPは書きました:解決

を! jQueryスクリプト@Attackするありがとう:

$("#contactos").change(function(event){ 
    var id = $("#contactos").find(':selected').val(); 
     $.getJSON('contacback.php?contactoID='+id, function(data) { 
     if (data.field == "dst") { 
      $("#dst").val(data.value); 
      } 
     }); 
}); 
関連する問題