私のコードは
data1 = "";
$('#send').click(function(){
var post = $(this).val();
$.post('post.php',{post:post},function(data){
data1 = data;
});
$(this).val(data1);
});
$ .post関数を実行する前に、関数.clickのすべてのプロセスが実行されているようです。誰か助けてくれませんか。
.post()は非同期です。つまり、バックグラウンドで実行され、その後の関数の実行をブロックしません。data1 = dataが設定される前に、$(this).val()はすでに呼び出されています。
関数のコールバックdataに依存するすべてをコーディングしてみてください。$.post()
$('#send').click(function() {
$.post('post.php', {
post: $(this).val()
}, function(data) {
$('#send').val(data);
});
});