編集:私がajax()で必要としたことを実行して解決しました。ajax応答オブジェクトからresponseJSONを取得するにはどうすればいいですか?
ここに私のコードがあります。私はいくつかの関連するプロパティが設定されているかどうかを確認するためにクエリを実行するためにajaxを使用してPHPで記入されているいくつかのidsを取得しようとしています。私はresponseJSONプロパティにアクセスしたいですが、私が直接アクセスしようとすると、定義されていません。しかし、変数全体をコンソールに書き込むだけであれば、そこにあるので、何かが足りないと思う。私はグローバル変数にレスポンスをコピーしようとしましたが、それは私が最初に設定した空の値を返します。どのようにして回答にアクセスできますか?
JS
<script>
var valid;
$(document).ready(function(){
//get all appointment numbers
count=0;
appointment_nums = [];
$('.mgrid_table > tbody > tr').each(function() {
var temp = ($(this).find('td').eq(3).find('label').html());
appointment_nums.push(temp);
});
appointment_nums = appointment_nums.filter(function(n){ return n != undefined });
appointments = appointment_nums.length;
scheduled = $.ajax({
type:"post",
url: "../testrequest.php",
data : {appointment_nums:appointment_nums},
dataType:'json',
done:function(response){
valid=response;
}
})
console.log(valid);
console.log(scheduled);
$('table:nth-of-type(2) > tbody > tr > td:nth-of-type(2)').each(function() {
if($(this).children().length < 1){
$(this).append('<a href="index.php?doctor=test&a='+appointment_nums[count]+'">Schedule Appointment </a>');
}
count = count + 1 ;
});
});
</script>
PHP
$appointment_numbers = (isset($_POST['appointment_nums'])) ? $_POST['appointment_nums']:0;
if ($appointment_numbers!=0){
$appointments_scheduled =array();
foreach ($appointment_numbers as $apt_num){
$sql = 'SELECT event_id FROM '.TABLE_APPOINTMENTS_SCHEDULING.' WHERE appointment_number = "'.$apt_num.'"';
$res = database_query($sql);
array_push($appointments_scheduled, empty($res));
}
編集:私はこれが重複しているとは思わない、それは同じ情報を得るためのわずかに異なる方法ですが、私の問題ではありません同じ。どこでもconsole.log(予定)を実行すると、すべての設定を含む応答オブジェクトが取得されます。だから私がデータを見ると、それがそこになければならず、それは応答がなされた後に表示されている。しかし、私はオブジェクトにアクセスすることはできません、私は何を意味するかを示すために画像を置くでしょう。また、有効でスケジュールされたものは、同じ情報を取得しようとする2つの試みです。他の投稿は私がそれをやろうとしている方法で助けにはならない、私はチェックした。あなたの$.ajax
方法で