#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 实现..的更多相关文章

  1. paip.提升用户体验---c++ qt自定义窗体(1)---标题栏的绘制

    源地址:http://blog.csdn.net/attilax/article/details/12343625 paip.提升用户体验---c++ qt自定义窗体(1)---标题栏的绘制 效果图: ...

  2. paip.提升用户体验--提升java的热部署热更新能力

    paip.提升用户体验--提升java的热部署热更新能力 想让java做到php那么好的热部署能力  "fix online"/在线修复吗??直接在服务器上修改源码生效,无需重启应 ...

  3. paip.提升用户体验----gcc c++ JIT-debugging 技术

    paip.提升用户体验----gcc  c++ JIT-debugging 技术 作者Attilax ,  EMAIL:1466519819@qq.com  来源:attilax的专栏 地址:http ...

  4. paip.提升用户体验-----c++ gcc 命令在notepad++扩展中的配置..

    paip.提升用户体验-----c++ gcc 命令在notepad++扩展中的配置.. 作者Attilax ,  EMAIL:1466519819@qq.com  来源:attilax的专栏 地址: ...

  5. paip.提升用户体验---c++ qt 取消gcc编译的警告信息.txt

    paip.提升用户体验---c++ qt 取消gcc编译的警告信息.txt 作者Attilax ,  EMAIL:1466519819@qq.com  来源:attilax的专栏 地址:http:// ...

  6. paip.提升用户体验---论文本编辑器的色彩方案

    paip.提升用户体验---论文本编辑器的色彩方案 作者Attilax ,  EMAIL:1466519819@qq.com  来源:attilax的专栏 地址:http://blog.csdn.ne ...

  7. Atitit.hybrid混合型应用 浏览器插件,控件的实现方式 浏览器运行本地程序的解决方案大的总结---提升用户体验and开发效率..

    Atitit.hybrid混合型应用 浏览器插件,控件的实现方式 浏览器运行本地程序的解决方案大的总结---提升用户体验and开发效率.. 1. hybrid App 1 1.1. Hybrid Ap ...

  8. 使用渐进式JPEG来提升用户体验

    今天才认识到原来JPEG文件有两种保存方式他们分别是Baseline JPEG(标准型)和Progressive JPEG(渐进式).两种格式有相同尺寸以及图像数据,他们的扩展名也是相同的,唯一的区别 ...

  9. UI设计可供性解析:巧用隐藏的设计力提升用户体验

    以下内容由Mockplus团队翻译整理,仅供学习交流,Mockplus是更快更简单的原型设计工具. 在实际的Web或App界面设计中,设计师们在学习和实践各种专业知识和技能之外,也会不可避免的遇到到各 ...

随机推荐

  1. C# 使用Newtonsoft.Json.dll 格式化显示Json串

    private string ConvertJsonString(string str) { //格式化json字符串 JsonSerializer serializer = new JsonSeri ...

  2. C#模拟浏览器发get,post请求

    调用: JArray ja = (JArray)JsonConvert.DeserializeObject("["+GetDataPost()+"]"); Re ...

  3. JSP页面数据展示:分组数据展示

    一.描述: 页面上要展示的数据只要写好sql从数据库查出来即可,但是展示有时候不是太好处理.比如工作中遇到的这种情况:有一个问题处理的流程,其中需要选择下一处理人,这些处理人要以部门的形式分组展示,实 ...

  4. ABAP 日期时间函数

    HR_JP_MONTH_BEGIN_END_DATE CALL FUNCTION 'HR_JP_MONTH_BEGIN_END_DATE' EXPORTING IV_DATE = ' IMPORTIN ...

  5. USB协议(1)

    今天开始学习USB协议,精挑细选,我决定使用<圈圈教你玩USB>这本书,并且参考网友翻译的<USB2.0中文协议>. 这两本书都可以在ishare.sina.com.cn 即新 ...

  6. iOS UILabel根据字符串长度自动适应宽度和高度

    //这个frame是初设的,没关系,后面还会重新设置其size.     UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0,0, ...

  7. 远程桌面Default.rdp 中各个参数的含义(转)

    存储在 Default.rdp 文件中的设置 默认情况下,将在“我的文档”文件夹中创建 Default.rdp 文件.以下 RDP 设置存储在 Desktop.rdp 文件中: desktopwidt ...

  8. Spring+Struts2/Hibernate 学习笔记

    ============Spring与Struts2整合============ (1)拷JAR包(Spring.Struts2) (2)配置org.springframework.web.conte ...

  9. 读取XML文件的节点内的内容

    <?xml version="1.0" encoding="utf-8" ?> <data> <tag3>15</ta ...

  10. Apache配置多域名 AH00548: NameVirtualHost has no effect and will be removed in the next release

    httpd-vhosts.conf 中首行 NameVirtualHost *:80 删除掉即可解决.