我是javascipt / jquery的新手,我找不到用提交“onchange”的选择表单确认表单提交的方法。
当用户选择一个新时间时,我希望有一个警告说“更改时间将清空您的购物车,您希望继续吗?”
然后,用户可以选择“取消”更改或确认。
<form id="hour_select" action="" method="POST" name="hour_form">
{% csrf_token %}
<select name="hour" onchange='hour_form.submit()'>
<option {{selected1900}} value="1900">7:00 PM</option>
<option {{selected2000}} value="2000">8:00 PM</option>
<option {{selected2100}} value="2100">9:00 PM</option>
<option {{selected2200}} value="2200">10:00 PM</option>
<option {{selected2300}} value="2300">11:00 PM</option>
<option {{selected2400}} value="2400">12:00 AM</option>
<option {{selected100}} value="100">1:00 AM</option>
<option {{selected200}} value="200">2:00 AM</option>
</select>
<input type="hidden" name="submit=" value="hour_change"/>
</form>
答案 0 :(得分:2)
您可以使用jQuery onchange
方法:
on
属性
$(document).ready(function(){
$('select[name=hour]').on('change', function() {
if (confirm("Changing the time will ....")) {
$('#hour_select').submit()
} else {
$('option:first', this).prop('selected', true)
}
})
})
另请注意,您应将代码放在文档就绪处理程序中。
答案 1 :(得分:2)
像这样放置代码,以便在加载时绑定事件:
$(document).ready(function(){
$('select[name=hour]').change(function(){
if(confirm('Changing the time will empty your cart, do you wish to continue?')){
$('#hour_select').submit();
}
});
});
答案 2 :(得分:-1)
$('select[name=hour]').on('change', function(){
var conf = confirm('Changing the time will empty your cart, do you wish to continue?');
if(conf == true){
hour_form.submit();
}else{
//do nothing, right?
}
});