我的ajax腳本有點問題,當你自己選擇下拉列表中的值時,腳本工作正常。但是當你點擊提交時,它會把值放到GET中。當你去「http://script.domain?prov=1」(它觸發下拉選定的值)ajax腳本它不工作(我認爲這是因爲。(改變),當它的價值是預先選定它不會改變,所以腳本不會沒有反應)。Ajax Select with preselected value
所以我需要腳本在頁面加載時自動運行,並檢查#prov的dropbox值。
這裏是鏈接https://jsfiddle.net/gfzd5aa1/1/
HTML
<form action="" method="get">
<label for="prov">Provincia: </label>
<select name="prov" id="prov" class="form-control">
<option value="0">Selecciona la provincia</option>
{% for provincia in provincias %}
<option value="{{ provincia.id }}" {% if get.prov == provincia.id %} selected {% endif %} > {{ provincia.name }} </option>
{% endfor %}
</select>
<label for="zona">Provincia: </label>
<select name="zona" id="zona" class="form-control">
</select>
</form>
在那裏, 「省報」 選擇字段觸發Ajax來填充 「卵」 選擇。
$('#prov').on('change', function() {
var self = $(this);
$.ajax({
url: 'http://localhost:8888/casas/public/ajax-prov',
type: 'GET',
data: { id: self.val() },
dataType: 'json',
success: function(response){
var $zona = $("#zona");
$zona.empty(); // remove old options
$("#zona").append('<option value="0">Seleciona la Zona</option>');
$.each(response.prov, function(i, state) {
$("#zona").append('<option value="'+ state.id +'">' + state.name + '</option>');
});
}
});
});
我的JavaScript技能是非常基本的,如果你能幫助我,讓它工作,我會感激它。
你能CONSOLE.LOG(響應)在您的要求,並在此粘貼在回答什麼是你ajax-prov – Svetoslav
當手動使用它時,它會返回一個對象,但與GET'prov'變量一起使用時,它不返回任何內容。它就像ajax一點都沒有觸發。 – abonive