Это мой HTML-код
Код: Выделить всё
Kota/Kabupaten
Bahamas
Bahrain
Bangladesh
Barbados
Belarus
Belgium
Belize
Benin
Код: Выделить всё
$('#frm_provinsi').on('change', function() {
var nilai = $(this).val();
console.log(nilai);
if (nilai !== '') {
$.post({
type: 'POST',
url: 'index.php',
data: { frm_provinsi: nilai },
contentType: 'application/x-www-form-urlencoded',
dataType: 'text',
})
.done(function(respon) {
console.log(respon);
// Tampilkan hasilnya di halaman web
$('#hasil').html('Provinsi: ' + respon.nama_provinsi);
})
.fail(function(xhr, status, error) {
console.log(xhr.responseText);
});
} else {
console.log('Nilai tidak boleh kosong');
}
});
Код: Выделить всё
var_dump($_REQUEST);
Вот некоторые изменения, которые я внес:
Сценарий:
- Там в форме есть 2 выбора.
- Первый выбор — frm_provinsi, а второй — frm_kota.
- Когда пользователь выбирает элемент из frm_provinsi, он вызывает Ajax с идентификатором из frm_provinsi
- Результат заполняется в $formData и сохраняется в переменной Smarty с именем $daftarKota
- $daftarKota заполняется в
Код: Выделить всё
$('#frm_provinsi').on('change', function() {
var nilai = $(this).val();
console.log(nilai);
if (nilai !== '') {
event.preventDefault();
$.post({
type: 'POST',
url: '',
data: $.param({ frm_provinsi: nilai }),
success: function(respon) {
document.getElementById("frm_kota").innerHTML = respon;
},
//contentType: 'application/x-www-form-urlencoded',
cache: false,
})
.done(function(respon) {
console.log(respon);
// Tampilkan hasilnya di halaman web
$('#frm_provinsi').html('Provinsi: ' + respon.nama_provinsi);
})
.fail(function(xhr, status, error) {
console.log(xhr.responseText);
});
} else {
console.log('Nilai tidak boleh kosong');
}
});
Код: Выделить всё
if (isset($_POST['frm_provinsi'])) {
$smarty->assign('prov', $_REQUEST['frm_provinsi']);
$GetDaftarKota = DB::query("SELECT id_kemendagri, nama_kota FROM `kota` WHERE LEFT(id_kemendagri, 2) = '".$_POST['frm_provinsi']."'");
//print_r ($GetDaftarKota);
$FormData = NULL;
foreach($GetDaftarKota as $me) {
$FormData .= "".$me['nama_kota']."\n";
}
$smarty->assign('daftarKota', $FormData);
Код: Выделить всё
Aceh (NAD)
Sumatera Utara
Sumatera Barat
Riau
Jambi
Sumatera Selatan
Bengkulu
Lampung
Kepulauan Bangka Belitung
Kepulauan Riau
DKI Jakarta
Jawa Barat
Jawa Tengah
DI Yogyakarta
Jawa Timur
Banten
Bali
Nusa Tenggara Barat (NTB)
Nusa Tenggara Timur (NTT)
Kalimantan Barat
Kalimantan Tengah
Kalimantan Selatan
Kalimantan Timur
Kalimantan Utara
Sulawesi Utara
Sulawesi Tengah
Sulawesi Selatan
Sulawesi Tenggara
Gorontalo
Sulawesi Barat
Maluku
Maluku Utara
Papua
Papua Barat
Papua Selatan
Papua Tengah
Papua Pegunungan
Papua Barat Daya
Код: Выделить всё
Код: Выделить всё
Tapanuli Tengah
Tapanuli Utara
Tapanuli Selatan
Nias
Langkat
Karo
Deli Serdang
Simalungun
Asahan
Labuhanbatu
Dairi
Toba
Mandailing Natal
Nias Selatan
Pakpak Bharat
Humbang Hasundutan
Samosir
Serdang Bedagai
Batu Bara
Padang Lawas Utara
Padang Lawas
Labuhanbatu Selatan
Labuhanbatu Utara
Nias Utara
Nias Barat
Kota Medan
Kota Pematangsiantar
Kota Sibolga
Kota Tanjung Balai
Kota Binjai
Kota Tebing Tinggi
Kota Padangsidimpuan
Kota Gunungsitoli

Как вы можете видеть в коте/ кабупатен после Папуа Барат Дайя, которое является именем провинции и должно быть членом frm_provinsi, а после него следует Тапанули Тенга и т. д., который является правильным членом. frm_city
Подробнее здесь: https://stackoverflow.com/questions/793 ... tp-request
Мобильная версия