模态对话框子窗口与父窗口传数据

来源:互联网 发布:软件系统概述 编辑:程序博客网 时间:2024/05/20 15:37

现在父窗口中写一个方法带参数的

如:

function getCatename(data){
        //
        $("input:eq(1)").val(data);
        
    }    
   
function selectCate(){
        art.dialog.open("<%=request.getContextPath()%>/brand/cateList.do", {
            width: '400px',
            height: '350px',
            title: "商品分类信息",
            opacity: 0.3,
            skin: 'green',
            lock: true,
            ok: function (iframeWin, topWin) {
                // iframeWin: 对话框iframe内容的window对象
                // topWin: 对话框所在位置的window对象
                iframeWin.addDept();
                iframeWin.getCatename(data);
                
                return false;
            },
            cancel: true
        });
    }



然后在子窗口传过去数据

$("#formadd").ajaxSubmit({

                url:"<%= request.getContextPath()%>/brand/brandCate.do",
                type:"post",
                resetForm:false,
                success:function(data){
                    /* if(data=="ok"){ */
                        //获取父窗口的window对象
                        var win = art.dialog.open.origin;  
                        //调用父窗口的js方法refresh();
                        
                        win.refresh();
                        //alert(data);
                        //var name=date;
                        //关闭对话框
                        art.dialog.close();
                        win.getCatename(data);
                    /* } */
                },  
                error:function(xhr,textStatus,errorThrown){  
                    alert("选择商品分类失败,请重试");
                }
            });

        }


在controller中

@ResponseBody
    @RequestMapping(value="/brandCate.do",method=RequestMethod.POST)
    public String brandAdd(Integer cateid,String catename,Model model){
        
        this.cateid=cateid;
        
        return catename;
    }


这里是返回变量

对于@ResponseBody这种注解,如果想返回变量的话需要在

spring-servlet.xml中把注解驱动写成这样

 <mvc:annotation-driven>
        <mvc:message-converters register-defaults="true">
         <!-- @ResponseBody 不返回空对象及变量 -->
         <bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
               <property name="objectMapper">
                   <bean class="com.fasterxml.jackson.databind.ObjectMapper">
                       <property name="serializationInclusion">
                          <value type="com.fasterxml.jackson.annotation.JsonInclude.Include">NON_NULL</value>
                       </property>
                   </bean>
              </property>
            </bean>
        </mvc:message-converters>
    
    </mvc:annotation-driven>

0 0