私は、これは、データが選択ボックスにajaxコールで値を返す方法は?
を使用して動的に選択された値を返すajax.phpファイルfunction interncompany(){
global $DB;
//query by experience total post
$sql = 'SELECT lc.id, count(ljj.job_id) as count, lc.companyname FROM {local_jobs_job} ljj INNER JOIN {local_companydetail} lc ON ljj.job_company_userid = lc.userid where ljj.job_type = 1 group by lc.companyname';
//get the query into record
$data = $DB->get_records_sql($sql);
//put the query into array
$rows = array();
$rows = array_map(function($item) {
return (object) ['c' => [
(object) ['v' => $item->companyname, 'f' => null],
(object) ['v' => intval($item->count), 'f' => null]
]];
}, array_values($data));
$cols = [
(object) ['id' => '', 'label' => 'LABEL', 'pattern' => '', 'type' => 'string'],
(object) ['id' => '', 'label' => 'TOTAL', 'pattern' => '', 'type' => 'number'],
];
$returndata = new stdClass;
$returndata->cols = $cols;
$returndata->rows = $rows;
echo json_encode($returndata);
}
ある
var jsonPieChartData = $.ajax({
url: "ajax.php",
data: {selValue1 : 1,selValue2 : 1} ,
dataType: "json",
async: false
}).responseText;
//create our data table out of json data loaded from server
console.log(jsonPieChartData);
データからGoogleのチャートを描画する(AJAX呼び出し)
if ($select1 == '1') {
if ($select2 == '1') {
jobcompany();
}
if ($select2 == '2') {
joblocation();
}
if ($select2 == '3') {
jobcategory();
}
if ($select2 == '4') {
jobsalary();
}
if ($select2 == '5') {
jobexperience();
}
if ($select2 == '6') {
joblevel();
}
}
elseif ($select1 == '2') {
if ($select2 == '1') {
interncompany();
}
if ($select2 == '2') {
internlocation();
}
if ($select2 == '3') {
interncategory();
}
if ($select2 == '4') {
internsalary();
}
if ($select2 == '5') {
internexperience();
}
if ($select2 == '6') {
internlevel();
}
}
私の質問:どのようにデータを動的に取得し、結果をデータに挿入する機能を作成したいのですか?{}ので、データはPHPファイルに戻されます。帽子はajaxコールで読み取ってチャートを描くことができます。
今すぐ何も返しません。私はデータを内部でハードコードする必要があります:{} ajaxでグラフを描画する。
データこのことにより、動的に選択するには:
// get the select value
$(document).ready(function() {
// for post-filter
$('#post-filter').on('change',function(){
var select1 = $(this).val(); // Post filter value
var select2 = $("#field-filter").val(); // Field Filter value
$.ajax({
type: 'POST',
url: 'ajax.php',
data: {selValue1 : select1,selValue2 :select2 },
success: function(result){
console.log(result);
}
});
});
// field filter value.
$('#field-filter').on('change',function(){
var select2 = $(this).val(); // Field filter value
var select1 = $("#post-filter").val(); // post Filter value
$.ajax({
type: 'POST',
url: 'ajax.php',
data: {selValue1 : select1,selValue2 :select2 },
success: function(result){
console.log(result);
}
});
});
});
これは、結果だけがアヤックスに復帰されていません...選択ボックスをクリックしたときの結果です。どのようなデータの内部を埋める:{} drawitem関数ajax呼び出しに結果を得るには?ヘッダ
データが表示されるが、エラーを持って、チャートがない結果を挿入
エラー。
PHPでJSONに設定されている 'データが選択されています選択ボックスを使って動的に - このコードは何ですか?コードの残りの部分との関係はどこにありますか? –
'console.log(jsonPieChartData);'これの出力は何ですか?また、 'async:false' - メインスレッドの同期XMLHttpRequestは廃止されました - これは最終的には失敗するかもしれませんが、非同期的に操作する方法を学ぶ必要があります –
データを設定しないとコンソールログ出力はnullです:{}内部のハードコード。 – joun