1
JavaScriptがXMLHttpRequestより高速です。私はそれを解決する必要はありません:XMLHttpRequestの終了後にJavascriptを実行します。
setTimeout(function() {}, 100);
マイコード:
function change_country(id) {
if (window.XMLHttpRequest) {
xmlhttp = new XMLHttpRequest();
}
else {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
var data = JSON.parse(xmlhttp.responseText);
document.getElementById("continent").value = data.continent;
document.getElementById("country").value = data.country;
}
xmlhttp.open("GET", "request_country_change.php?id=" + id, true);
xmlhttp.send();
}
}
コードは例のみではなく、オリジナルです。変更フォームにする必要があります。したがって、この例では、選択フィールドにすべての大陸のリストをロードします。そしてそれは国と同じidと同じ大陸を選択します。しかし、選択フィールドにのみリストがロードされますが、JavaScript部分が実行されます。
document.getElementById("continent").value = data.continent;
document.getElementById("country").value = data.country;
アラートとsetTimeoutの間に作っても問題はありませんが、別の方法で解決できますか?
何欲しいものを得る場合
とJSで
わかりません正確に「早すぎる」という意味ですか?それが後で実行された場合、どのように機能するか、どのように把握しましたかコード実行時の 'xmlhttp.responseText'の値は何ですか?何を期待しましたか? – Bergi
問題を示す元のコードを表示してください。 – Bergi
問題は一般的に、動的に生成される選択リストは、同時にデータベースに格納されているオプションを選択する必要があることです。変更フォームにする必要があります。たとえば、別のサブカテゴリにアーティクルを割り当てたいとします。 – etnobommel1989