/** * 下拉选项模版。 */ var optiontemplate = ''; $(function(){ getDialogs(); $("select[name='methodName']").change(methodChange); $('select[name="paraCt"]').live('change',function(){ var parentDiv = $(this).closest('div'); if($(this).val()==0){ $('#settingSpan',parentDiv).show(); } else{ $('#settingSpan',parentDiv).hide(); } }); }); //获取自定义对话框 function getDialogs(){ var url = __ctx + '/platform/form/bpmFormDialog/getAllDialogs.ht'; $.ajax({ type:"get", async:false, url:url, success:function(data){ if (data) { for(var i=0,c;c=data[i++];){ var opt = $(''); opt.attr("fields",c.resultfield); $("select[name='dialog-type']",$("#settingSpan")).append(opt); } } } }); }; //选择不同的对话框 function dialogChange(obj){ var dia=$(obj).find("option:selected"); var v = dia.attr("fields"); if(v){ var paramSelector = $(obj).siblings("#dialog-param"); var opt = paramSelector.find("option:first-child"); paramSelector.text(''); //添加 请选择…… option paramSelector.append(opt); var fields = $.parseJSON(v); for(var i=0,f;f=fields[i++];){ opt = $(''); paramSelector.append(opt); } } } //选择的方法事件 function methodChange(){ var option = $(this).find("option:selected"); if(!option)return; var methodInfo = option.data('methodInfo'); if(!methodInfo)return; $("input[name='returnType']").val(methodInfo.returnType); $("input[name='returnType']").trigger('change'); var param = constructParamTable(methodInfo); $("#paraInfo").empty().append(param); if($('#typeName').val()=="text"){ $("input[name='paraName']").each(function(n){ $(this).blur(function(){ var me = $(this); var paraValue = me.val(); $("input[name='paraName']").not(this).each(function(m){ var other = $(this); var value = other.val(); if('undefined' != typeof (paraValue) && paraValue!=null && paraValue!='' && paraValue == value ){ alert('参数值不能为空!'); return false; } }); }); }); } }; //获取该类的方法 function getMethods(url){ $.post(url,'',function(r){ var data = eval("("+r+")"); if(data.result){ var methods = data.methods, methodSelect = $("select[name='methodName']").empty(), methodName = $("#methodName").val(); for(var i=0,c;c=methods[i++];){ var newOpt = $('').val(c.methodName).text(c.methodName); if(c.methodName == methodName){ var paraData = $("textarea[name='argument']").val(); if(paraData){ paraData = eval("("+paraData+")"); c.para = paraData; } $(newOpt).attr("selected",true); } $(newOpt).data('methodInfo',c); methodSelect.append(newOpt); } methodSelect.trigger("change"); } else{ $.ligerDialog.error(data.message,'出错了!'); } }); } //根据表单ID保存并提交 function save(formId){ //验证 var frm=$('#'+formId); if(!frm.valid()) return ; var isReturnFalse = false; var settingSpan = $("[id='settingSpan']"); var setting; for(var i=0;i