`

在jquery+flexigrid制作表格中的小细节

 
阅读更多

1、jquery获取input输入框的值比用js获取要方便的多,不过如果你刚接触jquery,还是很容易出错的!下面来看看我用jquery获      取input文本输入框值的经历!   刚开始我以为用jquery取值和JavaScript取值是一样的过程,于是在用$("#id")来获得页面的input元  素的时候,发现$("#id").value不能取到值,后来经查证才知道:$("")是一个jquery对象,而不是一个dom element      valuedom  element的属性  jquery与之对应的是val    val() :获得第一个匹配元素的当前值。val(val):设置每一个匹配元素的值。

  所以代码应该这样写:
取值:val = $("#id")[0].value;
赋值:$("#id")[0].value = "new value";
或者$("#id").val("new value");
或者这样也可以:val = $("#id").attr("value");

 

2、$("#selectDemo").find("option:selected").text():获取选中的下拉框中的值

 

   flexigrid中获取记录信息

 

    $('.trSelected', grid).find("td:first").eq(i).text();//获取选中的记录的第一个字段的值,ID的值

 

    $('.trSelected', grid).length;//选中的记录条数

 

 

 

3、确认删除提示框的格式

 

         confirm('是否删除这 '+selected_count + ' 条记录吗?')

 

 

 

4readonlydisable属性的设置为true or false, 当为true时,则使这些控件不可输入

 

    即:$('# TypeUP').attr("readonly",true);

 

        $('# TypeUP').attr("disabled",false);

5、去掉文本框内值前后空格

$.trim($("#keywords").val());

 

6jquery+flexigrid解决中文乱码问题

 

javascript 里用  encodeURI("中文String")   进行编码发送 // 地址栏里直接传送中文

 

若是在地址栏直接传送中文,则要进行两次转码  encodeURI(encodeURI("中文String"))// java中接收同时解码
//java
中解码回来用   java.net.URLDecoder.decode("接收到的
String","UTF-8"

 

    前台:

 

//encodeURI(encodeURI(keywords):将页面录入中文进行编码,在后台再解析

 

    $("#listTab").flexOptions({"url":url+"&lang=cn"+"&keywords="+ encodeURI(encodeURI(keywords)) });

 

    后台:

 

//将页面传人的中文信息进行解析

 

 java.net.URLDecoder.decode(form.getRequest().getParameter("keywords"),"UTF-8");

7、查询到的数据填充下拉列表框内容

 ajaxAddOptions("<%=request.getContextPath()%>/help.do ", [$("#selectDemo")], "id", "cell");

 

 function ajaxAddOptions(url, targets, id, text){ 

 

       $.each(targets, function(i){//遍历

 

        var target=targets[i];

 

        target.empty();

 

        if(target.attr("id")=="selectDemo"){

 

            target.append("<option value=''></option>");

 

        }

 

        });

 

        $.getJSON(url, function(json){ 

 

            $(json).each(function(i){ 

 

                var x = json[i]; 

 

                $.each(targets, function(i){

 

                  var target=targets[i];

 

       target.append("<option value='" + eval_r("x." + id) + "'>"  eval_r("x." + text) + "</option>" )

 

                });

 

            }) 

 

        }); 

 

} 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics