Prawdopodobnie najłatwiej to zrobić, mając plik php, który zwraca JSON. Powiedzmy, że masz plik query.php
,
$result = mysql_query("SELECT field_name, field_value
FROM the_table");
$to_encode = array();
while($row = mysql_fetch_assoc($result)) {
$to_encode[] = $row;
}
echo json_encode($to_encode);
Jeśli jesteś ograniczony do używania document.write (jak zauważyłeś w komentarzach poniżej), nadaj swoim polom atrybut id, taki jak:<input type="text" id="field1" />
. Możesz odwołać się do tego pola za pomocą tego jQuery:$("#field1").val()
.
Oto kompletny przykład z kodem HTML. Jeśli zakładamy, że twoje pola nazywają się field1
i field2
, to
<!DOCTYPE html>
<html>
<head>
<title>That's about it</title>
</head>
<body>
<form>
<input type="text" id="field1" />
<input type="text" id="field2" />
</form>
</body>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js"></script>
<script>
$.getJSON('data.php', function(data) {
$.each(data, function(fieldName, fieldValue) {
$("#" + fieldName).val(fieldValue);
});
});
</script>
</html>
To jest wstawianie po utworzeniu kodu HTML, co może być najłatwiejsze. Jeśli chcesz wypełnić dane podczas dynamicznego konstruowania kodu HTML, nadal chcesz, aby plik PHP zwracał JSON, po prostu dodaj go bezpośrednio do value
atrybut.