YUI对话框,表单提交成功后回调
YUI Dialog, callback after form submit is successful
我有一个弹出对话框,使用YUI库发布表单,这是工作到目前为止。但是,在成功提交表单之后,我如何调用另一个函数呢?我基本上需要从刚刚由表单submit创建的数据库表行中拉出一个字段。
下面是我的代码: var callback = {
success: function(result) {
form = result.responseText;
dialog = new YAHOO.widget.Dialog('dialog1', {
width: '400px',
fixedcenter : "contained",
visible : false,
draggable: true,
effect:[{effect:YAHOO.widget.ContainerEffect.SLIDE, duration:0.2},
{effect:YAHOO.widget.ContainerEffect.FADE,duration:0.2}],
modal:true
});
dialog.setHeader(titleval);
dialog.setBody(form);
var handleCancel = function() {
this.cancel();
};
var handleSubmit = function() {
date_box = dialog.getData().date;
reason_box = dialog.getData().reason;
hours = dialog.getData().date_start_hours;
mins = dialog.getData().date_start_minutes;
format = dialog.getData().format;
ampm = dialog.getData().date_start_meridiem;
username = dialog.getData().user;
//basic validation
if(date_box == '' && reason_box == '' ){
document.getElementById('error1').style.display = "";
document.getElementById('error2').style.display = "";
}else if(date_box == '' || !isDate(date_box)){
document.getElementById('error1').style.display = "";
document.getElementById('error2').style.display = "none";
}
else if(reason_box == '' && !isDate(date_box)){
document.getElementById('error1').style.display = "";
document.getElementById('error2').style.display = "";
}
else if(reason_box == ''){
document.getElementById('error1').style.display = "none";
document.getElementById('error2').style.display = "";
}
else{
this.submit();
update(date_box, hours, mins, format, ampm, reason_box, username);
}
};
var myButtons = [{ text: "Save", handler: handleSubmit, isDefault: true },
{ text: "Cancel", handler:handleCancel }];
dialog.cfg.queueProperty("buttons", myButtons);
dialog.render(document.body);
dialog.show();
document.getElementById('call_id').value = id.value;
eval(document.getElementById('script').innerHTML);
eval(document.getElementById('script2').innerHTML);
}
}
var connectionObject = YAHOO.util.Connect.asyncRequest ("GET", "index.php?entryPoint=Reschedule&call_id="+id.value, callback);
我相信这个页面包含答案:http://developer.yahoo.com/yui/container/dialog/
向下滚动到标题为"提交表单数据"的部分。它展示了如何配置回调。
相关文章:
- 成功回调永远不会被JSONP请求调用
- 查询后websql成功回调无法访问变量
- 在$q服务中捕获拒绝而不触发成功回调
- 如何从ajax成功回调函数中读取javascript变量
- bookmarklet中的jQuery.getScript()进行回调,但没有成功执行插件
- $http服务未触发成功或错误回调
- 在AJAX中使用window.location.replace'成功'回调
- AJAX成功回调-执行javascript时出现问题
- 当使用命名函数作为jquery ajax成功回调时,我需要括号吗
- jQuery$.post可以在chrome、safari中工作,但不能在FF中工作(声明成功回调函数未定义)
- Yii ajaxbutton : 如何在成功回调函数中获取 $(this)
- 角承诺的“then”函数的成功回调的词汇范围是什么?
- 解析查询.首次成功/错误 间歇性不调用回调
- 承诺中的成功回调不会发生$http
- AJAX内部回调成功
- AJAX 的回调(成功?)函数
- 流星:从服务器回调成功后写入数据库
- 回调成功后,不能将字符串推入数组
- Ajax, post数据但不回调成功
- 如何使循环等待回调成功