jQuery MiniUI

标题: lookup控件 如何 在页面加载的时候 给他设置一个 value 和 text [打印本页]

作者: chenj1985    时间: 2012-7-4 15:22:31     标题: lookup控件 如何 在页面加载的时候 给他设置一个 value 和 text

lookup控件 如何 在页面加载的时候 给他设置一个 value 和 text
<input id="lookup2" name="look" class="mini-lookup" style="width:200px;"
        textField="name" valueField="id" popupWidth="auto"
        popup="#gridPanel" grid="#datagrid1" multiSelect="false"
    />

formsetdata 的时候 我把 id name 值都 组织成了 json字符串
form getdata 的时候 是可以去到id的

作者: niko    时间: 2012-7-4 15:52:33

var look = mini.get("lookup2");
look.setValue("1");
look.setText("abc");
作者: xlplwjy    时间: 2012-9-3 10:55:20

niko 发表于 2012-7-4 15:52
var look = mini.get("lookup2");
look.setValue("1");
look.setText("abc");

为什么这个代码写在外面可以,写在方法里面却没效果了,很奇怪啊?是不是bug呢?
  1. //生效
  2. var lookup = mini.get("lookup ");         lookup.setValue("201207250523090217");
  3. //不生效
  4. function aaa(){
  5. var lookup = mini.get("lookup ");         lookup.setValue("201207250523090217");
  6. }
复制代码

作者: factory    时间: 2012-9-3 13:33:14

xlplwjy 发表于 2012-9-3 10:55
为什么这个代码写在外面可以,写在方法里面却没效果了,很奇怪啊?是不是bug呢? ...

写在方法里也能生效.你把你的代码贴上来看下
作者: xlplwjy    时间: 2012-9-3 13:44:54

factory 发表于 2012-9-3 13:33
写在方法里也能生效.你把你的代码贴上来看下

这个function是列表单击事件
function selectDelRow(e){
                var grid = e.sender;
                    var record = grid.getSelected();
                    if(record!=null){
                            var del_id = record.del_id;
                                   var ent_id = record.ent_id;
                                   var ent_id_lookup = mini.get("ent_id");
                                   ent_id_lookup.setValue(ent_id);
                                   $.ajax({
                                url: "<cut value="${pageContext.request.contextPath}"/>/announce/delivery.do?method=getDelNotesList",
                                data: {del_id:del_id},
                                success: function (text) {
                                    if(text!=""){
                                            var del_notes = mini.get("del_notes");
                                            del_notes.setValue(text);
                                       }
                                },
                                error: function (jqXHR, textStatus, errorThrown) {
                                    nb.talert("与远程服务器交互异常,请重新登录");
                                }
                                    });
                            }
                    cancelData();
        }
作者: factory    时间: 2012-9-3 13:59:19

xlplwjy 发表于 2012-9-3 13:44
这个function是列表单击事件
function selectDelRow(e){
                var grid = e.sender;

一样可以获取到lookup.没有什么问题
你再把你的界面代码发下看看
作者: xlplwjy    时间: 2012-9-3 14:32:33

factory 发表于 2012-9-3 13:59
一样可以获取到lookup.没有什么问题
你再把你的界面代码发下看看

那个控件写在editform里面,并且editform与列表绑定var db = new mini.DataBinding();
db.bindForm("editForm", delgrid); 代码跟demo里的一模一样,复制过来的
作者: factory    时间: 2012-9-3 15:26:24

xlplwjy 发表于 2012-9-3 14:32
那个控件写在editform里面,并且editform与列表绑定var db = new mini.DataBinding();
db.bindForm("edit ...

我照着你说的,把lookup放editform里面,然后通过点击按钮来设置look的setText,完全正常没问题....
作者: xlplwjy    时间: 2012-9-4 08:49:18

factory 发表于 2012-9-3 15:26
我照着你说的,把lookup放editform里面,然后通过点击按钮来设置look的setText,完全正常没问题.... ...

嗯,我一开始setText没试,刚才试了下是可以的,但是setValue还是没效果,求支援
作者: factory    时间: 2012-9-4 09:47:16

xlplwjy 发表于 2012-9-4 08:49
嗯,我一开始setText没试,刚才试了下是可以的,但是setValue还是没效果,求支援 ...

怎么可能没效果呢,你的setText都成功了,说明lookup能是可以找到的,那么setValue可以也可以啊,你先setValue,然后再alert一下他的getValue试试,看能不能取到值
作者: xlplwjy    时间: 2012-9-4 10:04:27

factory 发表于 2012-9-4 09:47
怎么可能没效果呢,你的setText都成功了,说明lookup能是可以找到的,那么setValue可以也可以啊,你先setValu ...

神了~,getValue有,控件里面没有,那个值就是从控件里面取出来的id啊,怎么回事~

作者: factory    时间: 2012-9-4 11:06:09

xlplwjy 发表于 2012-9-4 10:04
神了~,getValue有,控件里面没有,那个值就是从控件里面取出来的id啊,怎么回事~
...

记得给lookup控件设置name属和textName,一个对应value,一个对应text
作者: windsix    时间: 2012-9-4 21:03:56

xlplwjy 发表于 2012-9-4 10:04
神了~,getValue有,控件里面没有,那个值就是从控件里面取出来的id啊,怎么回事~
...

。。。。setValue设置的是value,setText才是显示的text,对于lookup之类的来说只设置value的话那也只是设置了隐藏的那个input而已,那个显示的input要靠setText来处理的。说白了就是要同时调用setValue和setText
作者: xlplwjy    时间: 2012-9-5 09:41:07

windsix 发表于 2012-9-4 21:03
。。。。setValue设置的是value,setText才是显示的text,对于lookup之类的来说只设置value的话那也只是 ...

原来是这样~我以为能和下拉控件那种一样~




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