使用jquery即兴弹出,我做了一个表格。但是问题是我想在提交之前检查用户输入。可能吗。
在这里,如果用户在第二个屏幕中选择选项,我想根据其值调用另一个弹出窗口。可能吗。
var my_states = {
state0: {
title: 'Name',
html:'<label>First <input type="text" name="fname" value=""></label><br />'+
'<label>Last <input type="text" name="lname" value=""></label><br />',
buttons: { Next: 1 },
//focus: "input[name='fname']",
submit:function(e,v,m,f){
console.log(f);
e.preventDefault();
$.prompt.goToState('state1');
}
},
state1: {
title: 'Check Here',
html:'<table><tr><td><strong>Generate ODEC ID </strong></td><td>:</td><td id=\'gen_odec\' class=\'gen_odec\'> <select name=\'select_odec\' id=\'select_odec\' class=\'select_odec\'>'+<?php echo json_encode($odecpref)?>+'</select></td></tr></table>',
buttons: { Back: -1, Next: 1 },
//focus: ":input:first",
submit:function(e,v,m,f){
console.log(f);
if(v==1) {$.prompt.close();
return false;}
if(v==-1) $.prompt.goToState('state0');
e.preventDefault();
}
},
};
$.prompt(my_states);
最佳答案
在jQuery中使用“ on”可以解决问题,就像这样。感谢@Roland Bertolom
$(document).on('change', '#select_odec', function(){
if($(this).val() === 'valueOfDesiredOption') {
$.prompt.goToState('stateYouNeed');
}
});