jQuery MiniUI

标题: 求教!怎样获取datagrid行列里面combobox的文本值? [打印本页]

作者: TangC    时间: 2013-12-13 09:19:46     标题: 求教!怎样获取datagrid行列里面combobox的文本值?

<div type="comboboxcolumn" field="applicationId" headerAlign="center" allowSort="true" align = "center">


        <input id="combo"  property="editor"

                    class="mini-combobox" textField="applicationName"

                    valueField="applicationId"


                    url="${ctx}/service/application/getApplications" readonly="readonly" disabled="disabled"

         />


</div>




div这个列是动态从后台调用通过mini-combobox显示的,也就是显示 textField="applicationName" 这样的一个文本。
我现在就是要在跳页面的时候带上  textField="applicationName" 这个文本值,但是
                    var obj = mini.get("combo");
                    alert("show "+obj.getText());
                    或者:
                    alert("show "+obj.getValue());
                    都是一个空的值!!!

                    [attach]3412[/attach]
                    请问各位有经验的朋友,这里哪里出了问题?或是这里我有哪些不对?谢谢耐心指导!


作者: felt    时间: 2013-12-13 09:30:18

datagrid的编辑器在编辑的时候才会创建
可以在监听oncellbeginedit
在开始编辑的时候设置
类似于这个demo
http://www.miniui.com/demo/#src=datagrid/celllinkedit.html
作者: TangC    时间: 2013-12-13 10:00:06

felt 发表于 2013-12-13 09:30
datagrid的编辑器在编辑的时候才会创建
可以在监听oncellbeginedit
在开始编辑的时候设置

你好!谢谢你的指导。
         我这里不是要进行编辑,用不到这个事件。
         我现在这里只是想简单的获取这个“文本显示的值”,我要拿到显示的这个文本,带到另一个页面去显示。
作者: felt    时间: 2013-12-13 10:47:50

就是这个单元格的显示文本?
var row=grid.getRow(index)    //获取行对象
alert(row.applicationId)
作者: TangC    时间: 2013-12-13 13:24:18

felt 发表于 2013-12-13 10:47
就是这个单元格的显示文本?
var row=grid.getRow(index)    //获取行对象
alert(row.applicationId) ...

你好!其实这样获取只是一个编号。
不知道是我没表述清楚,还是其它原因。
我试了很多种方式,都没有解决。
代码我贴得很清楚了,也应该描述清楚了。就是获取applicationName显示的文本值。
我原以为正常的思路getText()/getValue,就能获取到,但是都没有。
作者: factory    时间: 2013-12-13 13:51:03

本帖最后由 factory 于 2013-12-13 13:52 编辑
TangC 发表于 2013-12-13 13:24
你好!其实这样获取只是一个编号。
不知道是我没表述清楚,还是其它原因。
我试了很多种方式,都没有解决 ...

首先你要明白一点,你要获取一行数据中的值,那前提是这行表格的数据内要有这个字段

你如果表格的行数据是{id:"a"},但是你要获取这个a对应的text,怎么可能获取到?因为他都不存在. 你要的text是在这个a对应的下拉框里面,那这个就是combobox这个控件的事情了,跟表格无关.

你要么在后台把这个a对应的文本组织到表格行数据内,再返回给前台的表格.{id:"a",text:"文本"},类似这样,那对表格行数据而言就能获取到了.
要么就var editor =grid. getCellEditor ( column, row )
把指定单元格的编辑器获取出来,然后再去从这个编辑器的getData()数据内,把a对应的文本给取出来.
作者: TangC    时间: 2014-1-9 08:48:58

factory 发表于 2013-12-13 13:51
首先你要明白一点,你要获取一行数据中的值,那前提是这行表格的数据内要有这个字段

你如果表格的行数据是{ ...

您好!请问一下,miniui中的“日历控件”有没有只能选取年份的?不需要月和日,只是需要年份。
作者: factory    时间: 2014-1-9 09:26:48

TangC 发表于 2014-1-9 08:48
您好!请问一下,miniui中的“日历控件”有没有只能选取年份的?不需要月和日,只是需要年份。 ...

只有年月日和 年月
没有单独年. 你自己给日历上加上格式化,选中之后只显示年
作者: TangC    时间: 2014-1-9 09:50:41

factory 发表于 2014-1-9 09:26
只有年月日和 年月
没有单独年. 你自己给日历上加上格式化,选中之后只显示年 ...

谢谢!
我知道可以加一个format="yyyy"。
但是在“日历”控件上进行日期选择的时候,还是要选月和日啊。
还有,如果以“yyyy”这种格式保存到数据库后,比如我要进行“修改”的时候,这个格式好像是不能显示在“日历控件”上的,而且是一个空,我尝试过。

作者: felt    时间: 2014-1-9 10:14:17

TangC 发表于 2014-1-9 09:50
谢谢!
我知道可以加一个format="yyyy"。
但是在“日历”控件上进行日期选择的时候,还是要选月和日啊。

format="yyyy"只是界面的显示是yyyy格式,你保存的时候还是一个时间对象,你需要保存yyyy格式,后台要自己处理




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