GETパラメタ取得
var queryString = window.location.search;
if(queryString){
queryString = decodeURI(queryString.substring(1));
var parameters = queryString.split('&');
for (var param of parameters) {
var element = param.split('=');
var paramName = decodeURIComponent(element[0]);
var paramValue = decodeURIComponent(element[1]);
queryObject[paramName] = paramValue;
}
}
API叩いたとき向けselectのoptionをjsonで持ってきて指定のエレメントにセットする
const setSelect = async(url,element_id,value_key,text_key)=> {
await $.ajax({
type : "GET",
url : url,
data : {
},
dataType : "json",
cache : false
}).done(function (json) {
var select_element = document.getElementById(element_id);
select_element.innerHTML = "";
for ( var romMap of json["data"]) {
var option = document.createElement('option');
option.setAttribute('value', romMap[value_key]);
option.innerHTML = romMap[text_key];
select_element.appendChild(option);
}
}).fail(function (data) {
// Error
}).always(function (data) {
// 常に実行する処理
});
}
fastFunc = async()=> {
//初期化処理
await setSelect("./brest/major_class/","major_classification_code_input",'class_code','class_name');
}
fastFunc();
//帰ってくるjsonは
/*
{
"data": [
{
"id": "1",
"user_section_id": "1",
"class_code": "1",
"class_name": "家 具"
},
{
"id": "2",
"user_section_id": "1",
"class_code": "2",
"class_name": "TAKE OUT"
}
]
}
*/
//おまけ指定のvalueが選択されるようにする
const selected_option =(target_id,value)=>{
let option_list = document.getElementById(target_id).options;
for ( var r_key in option_list) {
option_row = option_list[r_key];
if(option_row.value==value){
option_row.selected = true;
}
}
}
コメント
コメントを投稿