paip.提升用户体验--radio图片选择器 easyui 实现..
#paip.提升用户体验--radio图片选择器 easyui 实现..
===================================
##原因...
--------------------
首先,寻找这个控件,但是没有..
只好自己实现,使用Listview..
但是多少framework都没lv,只好使用datagrid来的做..
##.keyword,subtitle关键字,子标题
-------------------------
js json 字符串的转换.
列表 行转列 方法..
grid 列格式化..
datagrid >>> listview
作者 老哇的爪子 Attilax 艾龙, EMAIL:1466519819@qq.com
来源: http://blog.csdn.net/attilax
##pseudo code伪码 处理流程
--------------------------
首先,捕获all json obj list
分页,5
line>> column..
绑定到个grid..(column 定义格式化到图片src)
设置图片边框,2px,normal:dot,color:gray ,,,选择的:slot,color:red
设置mouse over,out event
获得值,,,一个是呈交的时候儿从slectpics pics 根据class..这个麻烦的..
一个是clieck的时候儿不个值放得个input里面,这个easy..
##actual code 实际代码如下
----------------
###捕获all json obj list
function getAjaxData()
{
var urlo4="data/defIcons.json";
$.ajax({
url:urlo4,
dataType:"json",
success:function(data){
// $("#resText").html(date);
// alert(data);
// alert(data[0]);
// var obj = eval(data);
var obj=data;
logx("src::"+data[0].src);
var data2=Line2Col(data);
logx("line2col after:"+data2);
//return;
// var dataObjFmt=eval(data2);
addDataToGrid(data2);
}
});
###
function Line2Col(data)
{
var arrayObj = new Array();
logx("dataarr.length:"+data.length);
var arr = eval(data);
//arr=data;
logx("<arr.length:"+arr.length);
for(var i=0;i<arr.length;i++){
var obj=arr[i];
var s=obj.id+","+obj.src;
arrayObj.push(s);
if(i>=4)
break;
}
// arrayObj.push("testxxx");
logx("arrayObjLeng:"+arrayObj.length);
var s_r="";
for(j=0;j<arrayObj.length;j++)
{
var s=arrayObj[j];
var tmp=' "item@index": "@str"';
tmp=tmp.replace("@index",j+1).replace("@str",s);
s_r+=tmp+",";
}
s_r=s_r.substr(0,s_r.length-1);
logx("s_r::"+s_r);
s_r="[{"+s_r+"}]";
return eval(s_r);
}
###bind to grid
function addDataToGrid(data)
{$('#dg').datagrid({
data: data,
showHeader: false
});
}
<table id="dg" class="easyui-datagrid" data-options="singleSelect:false" style="height:121px" >
<thead>
<tr>
<th data-options="field:'item1' ,width:100,formatter:formatItem" >item1</th>
<th data-options="field:'item2' ,width:100,formatter:formatItem" >部门名称</th>
<th data-options="field:'item3' ,width:100,formatter:formatItem" >部门名称</th>
<th data-options="field:'item4' ,width:100,formatter:formatItem" >部门名称</th>
<th data-options="field:'item5' ,width:100,formatter:formatItem" >item5</th>
</tr>
</thead>
</table>
function formatItem(val,row)
{
var itemval=val;
try{
var a=val.split(",");
var id=a[0];
var src=a[1];
}catch(e){}
return '<div ><img id="icon_divO4_'+id+'" class="img_def" onmouseover="over_event(this.id)" onmouseout="mouseout_event(this.id)" src="'+src+'" onclick="selectIcon('+id+')" /></div>';
}
###set mouseout_event mouseover event
<style type="text/css">
.img_def {
border: 2px dotted #CCC;
}
.over {
border: 2px solid #F30;
}
.img_over {
border: 2px solid #F30;
}
</style>
function mouseout_event(id)
{
$("#"+id).attr("class","img_def");
}
function over_event(id)
{
$("#"+id).attr("class","img_over");
}
### set click event
function selectIcon(id)
{
//alert(id);
logx("slctIconId:"+id);
$("#selctIconId").attr("value",id);
}
paip.提升用户体验--radio图片选择器 easyui 实现..的更多相关文章
- paip.提升用户体验---c++ qt自定义窗体(1)---标题栏的绘制
源地址:http://blog.csdn.net/attilax/article/details/12343625 paip.提升用户体验---c++ qt自定义窗体(1)---标题栏的绘制 效果图: ...
- paip.提升用户体验--提升java的热部署热更新能力
paip.提升用户体验--提升java的热部署热更新能力 想让java做到php那么好的热部署能力 "fix online"/在线修复吗??直接在服务器上修改源码生效,无需重启应 ...
- paip.提升用户体验----gcc c++ JIT-debugging 技术
paip.提升用户体验----gcc c++ JIT-debugging 技术 作者Attilax , EMAIL:1466519819@qq.com 来源:attilax的专栏 地址:http ...
- paip.提升用户体验-----c++ gcc 命令在notepad++扩展中的配置..
paip.提升用户体验-----c++ gcc 命令在notepad++扩展中的配置.. 作者Attilax , EMAIL:1466519819@qq.com 来源:attilax的专栏 地址: ...
- paip.提升用户体验---c++ qt 取消gcc编译的警告信息.txt
paip.提升用户体验---c++ qt 取消gcc编译的警告信息.txt 作者Attilax , EMAIL:1466519819@qq.com 来源:attilax的专栏 地址:http:// ...
- paip.提升用户体验---论文本编辑器的色彩方案
paip.提升用户体验---论文本编辑器的色彩方案 作者Attilax , EMAIL:1466519819@qq.com 来源:attilax的专栏 地址:http://blog.csdn.ne ...
- Atitit.hybrid混合型应用 浏览器插件,控件的实现方式 浏览器运行本地程序的解决方案大的总结---提升用户体验and开发效率..
Atitit.hybrid混合型应用 浏览器插件,控件的实现方式 浏览器运行本地程序的解决方案大的总结---提升用户体验and开发效率.. 1. hybrid App 1 1.1. Hybrid Ap ...
- 使用渐进式JPEG来提升用户体验
今天才认识到原来JPEG文件有两种保存方式他们分别是Baseline JPEG(标准型)和Progressive JPEG(渐进式).两种格式有相同尺寸以及图像数据,他们的扩展名也是相同的,唯一的区别 ...
- UI设计可供性解析:巧用隐藏的设计力提升用户体验
以下内容由Mockplus团队翻译整理,仅供学习交流,Mockplus是更快更简单的原型设计工具. 在实际的Web或App界面设计中,设计师们在学习和实践各种专业知识和技能之外,也会不可避免的遇到到各 ...
随机推荐
- POJ2762 UV
题意:n个山洞,对于每两个山洞s,e,都满足s可以到达e或者e可以到达s,则输出Yes,否则输出No. ---------------------------------------- 第一个缩点的题 ...
- 联想扬天 电脑 键盘改默认fn功能键
联想扬天电脑改键工具 windows 8 windows8.1 64位版本:http://support1.lenovo.com.cn/lenovo/wsi/Modules/DriverDetail. ...
- snmp switch traffic交换机带宽
上代码 <?php function getstr1($strall,$str1,$str2,$html_charset='utf-8'){ $i1=mb_strpos($strall,$str ...
- C++矩阵运算库armadillo配置笔记
前言 最近在用C++实现神经网络模型,优化算法需要用到矩阵操作,一开始我用的是boost的ublas库,但用着用着感觉很不习惯,接口不够友好.于是上网搜索矩阵运算哪家强,大神们都推荐armadillo ...
- VS2013使用rtklib中需要注意的一些问题(编译)
最近因为项目需要需要对rtcm数据进行解码,rtklib提供了很多底层的函数,准备直接输出标准DLL的方式供C#调用.下面把项目中引用rtklib源码需要注意的地方记录下. 1. 首先在vs2013中 ...
- 由struts错误使用引发的漏洞,使用参数作为返回的文件路径或文件名,作为返回result 值
该错误可以导致他人任意访问该路径下的任何文件. struts 文件 <?xml version="1.0" encoding="UTF-8" ?> ...
- android text
"@you bang--- go on -------" 需要做分享内容,前面有段格式固定写死,同时颜色为灰色:后面的内容可以编辑,颜色为黑色,同时支持多行 有人用textview ...
- Android AsyncTask完全解析,带你从源码的角度彻底理解
转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/11711405 我们都知道,Android UI是线程不安全的,如果想要在子线程里进 ...
- 有关pascal的填充语句小技巧
背景 今天打代码,用了一次fillchar(a,sizeof(a),1); 结果a数组(of longint)所赋的值却不是1 探索 ···pascal program fillchartest; v ...
- 理解em,rem以及rem的失效问题
在平常做网站写代码的时候一般都是使用px,在之前的学习时就略微的学习了一些关于em.rem的知识,但是由于一直没有用到过,所以几乎全部忘记了.今天在研究一些知识的时候用到了em,所以特意将学到的知识总 ...