jQuery MiniUI

标题: mini-window问题 [打印本页]

作者: flatleaf    时间: 2014-9-19 11:35:34     标题: mini-window问题

我的页面有一个mini-window,在这个window里放了一个form,我写了一个js函数,用ajax获得form的json,使用form的SetData方法将数据传到form中,再将这个window显示,window能正常弹出,但是form里面没有数据
作者: felt    时间: 2014-9-19 11:42:03

把相关的代码贴出来

作者: flatleaf    时间: 2014-9-19 11:48:29

function show(personinfoid)
{
   var win = mini.get("win2");
$.ajax({
         url: "getPersonInfoOfJsonById.action?personinfoid=" + personinfoid,
         cache: false,
         success: function (text) {
         alert(text);
         var o = mini.decode(text);
         form.setData(o);
         win.showAtPos('center', 'bottom');
                  }
           });
}
作者: felt    时间: 2014-9-19 11:59:19

flatleaf 发表于 2014-9-19 11:48
function show(personinfoid)
{
   var win = mini.get("win2");

获取到的数据对不对,form.setData根据name对应
作者: flatleaf    时间: 2014-9-19 12:01:53

我alert了下text,没有问题,form里的input标签name属性和text里是一致的
作者: felt    时间: 2014-9-19 12:10:26

flatleaf 发表于 2014-9-19 12:01
我alert了下text,没有问题,form里的input标签name属性和text里是一致的

给固定的form赋值有没有问题?
作者: flatleaf    时间: 2014-9-19 13:17:43

本帖最后由 flatleaf 于 2014-9-19 13:29 编辑

我在form里的mini-textbox里设置了id="personname"和value="张三"
js函数加了一句
mini.get("personname").setValue("李四");
可以实现修改
在ajax里
mini.get("personname").setValue(o.personname);
也可以修改

作者: felt    时间: 2014-9-19 13:30:37

flatleaf 发表于 2014-9-19 13:17
我在form里的mini-textbox里设置了id="personname"和value="张三"
js函数加了一句
mini.get("personname"). ...

先用一个的值去setData看看能不能赋值
到底是数据不对还是什么情况,本地模拟你的环境,没有问题
  1. <button onclick="setD()">setD</button>
  2. <div class="mini-window" id="win1" style="width:300px;height:200px" showModal="false">
  3.    <div id="form1">
  4.       <input name="p1" class="mini-textbox" />
  5.       <input name="p2" class="mini-textbox" />
  6.    </div>
  7. </div>
  8. function setD(){
  9.   
  10.    var form=new mini.Form("form1")
  11.    var win1=mini.get("win1")
  12.    $.ajax({
  13.       url:"t21.txt",    //用一个txt文件模拟你的数据{p1:"aaa",p2:"bbb"}
  14.       success:function(text){
  15.          var data=mini.decode(text)
  16.          form.setData(data);
  17.          win1.showAtPos('center', 'bottom');
  18.       }
  19.    })
  20. }
复制代码

作者: flatleaf    时间: 2014-9-19 15:16:48

felt 发表于 2014-9-19 13:30
先用一个的值去setData看看能不能赋值
到底是数据不对还是什么情况,本地模拟你的环境,没有问题 ...



var form = new mini.Form("submitData");
        function show(personinfoid)
    {
         var win = mini.get("win2");
         //$("#photo").attr("src","getPersonImage.action?personInfoid="+personinfoid);
         var data="{'personname':'zhangsan','sex':'0','personinfoid':'12','identifycardid':'23423423'}";
         var o=mini.decode(data);
          alert(o.personname);
          alert(o.sex);
          alert(o.identifycardid);
         form.setData(o);
         win.showAtPos('center', 'bottom');
     //    $.ajax({
     //    url: "getPersonInfoOfJsonById.action?personinfoid=" + personinfoid,
    //     cache: false,
     //    success: function (text) {
    //     var data="{'personname':'zhangsan','sex':'0','personinfoid':'12','identifycardid':'23423423'}";
     //    var o=mini.decode(data);
         //var o = mini.decode(text);
     //    alert(o.personname);
         //mini.get("personname").setValue(o.personname);
     //    form.setData(o);
         
   //               }
   //        });
         
    }
页面代码提交不上来,我把js做了下修改,还是没能实现,我比较了下,就是我的form用的form标签,不是div

作者: felt    时间: 2014-9-19 15:21:37

flatleaf 发表于 2014-9-19 15:16
var form = new mini.Form("submitData");
        function show(personinfoid)
    {

那你改成div有效吗?
如果还有问题,回复的高级模式可以打包上传文件
作者: flatleaf    时间: 2014-9-19 15:29:59

[attach]5200[/attach]改成div也不行
作者: felt    时间: 2014-9-19 15:40:29

[attach]5202[/attach]
flatleaf 发表于 2014-9-19 15:29
改成div也不行


把那个window单独拎出来了,可以的


作者: flatleaf    时间: 2014-9-19 15:43:50

本帖最后由 flatleaf 于 2014-9-19 15:48 编辑

我没有理解意思,应该把那个window放在哪里,是要新建一个页面对吗??
作者: felt    时间: 2014-9-19 15:49:03

flatleaf 发表于 2014-9-19 15:43
我没有理解意思,应该把那个window放在哪里?

看我发那个页面,简化成这样不都可以吗,你自己检查一下你的页面上到底是什么影响到了




欢迎光临 jQuery MiniUI (http://miniui.com/discuss/) Powered by Discuz! X2