2012-02-06 86 views
1

我知道如何用這樣的ajax調用填充單個INPUT字段。假設這是GO.PHP:如何用一個MySQL查詢填充多個輸入fieds

$qry = mysql_query("SELECT * FROM reviews WHERE id = ".$_GET['param']." "); 
while($review = mysql_fetch_array($qry)) { 
    echo $review['description']; 
} 

當我點擊以下:

<a class="editlink" id="<?php echo $review['id']; ?>" href="#"><?php echo $review['title']; ?></a> 

我叫AJAX是這樣的:

$(".editlink").click(function() { 
    $.get("go.php", {param: $(this).attr('id')}, 
     function(data) { 
      $('textarea#area1').html(data); 
     });  
    return false; 
}); 

'數據' 被「回聲$審覈填寫[「description」]'並傳遞給正確填充的TEXTAREA。好的,到現在一切正常。但我不知道如何使用相同的mySQL查詢來填充2,3,4等字段。假如我也有:

<input type="text" name="title"> 
<input type="text" name="date"> 
<input type="text" name="author"> 

如何要通過「數據」(GO.PHP)來填充所有的輸入字段?

+0

相同的值,或從相同的查詢不同的值? – Umbrella 2012-02-06 15:30:41

+0

來自同一查詢的不同值:標題,日期,描述等 – Nicero 2012-02-06 15:43:12

回答

1

我會生成併發送一個JSON字符串GO.PHP。從GO.PHP JSON字符串會是這樣的:

{"title" : "mytitle", "date" : "mydate", "author" : "myauthor"} 

然後在客戶端:

jsonOBJ = {}; 
$.ajax({ 
    type: "GET", 
    url: "go.php", 
    cache: false, 
    success: function(data){ 
    jsonOBJ = jQuery.parseJSON(data); 
    for (var key in jsonOBJ) { 
     $("input[name=" + key + "]").val(jsonOBJ[key]); 
    } 
    }, 
}); 
0

您可以用一系列不同的方式選擇多個元素。

我建議您同時包裝並添加一個類到您想要選擇的input元素。這樣你就可以使用這樣的選擇器;

$('div#container-element input.customClass').html(data); 

其他選擇元素的方法;

多發性元件由標識

$('#input1, #input2') 

的元件

$('div#container-element input') 

類型的所有input元素 「文本」

$('input[type="text"]') 
內的所有 input元件

閱讀jQuery的文檔有關selectors的信息和靈感:)

+0

對不起,但這並不回答我的問題。我知道如何使用選擇器。我不知道如何執行以下關係:db_record_1 => input_filed_1; db_record_2 => input_field_2。請再讀一遍我的帖子。謝謝。 – Nicero 2012-02-06 15:37:49