在表格中动态修改数据

$(function() {  //相当于在页面body标签中加入onload事件
              $(".SORT").click(function() { //在页面中有SORT的标签加上click函数
                  var objTD = $(this);
                  var oldStr = $.trim($(this).text()); //保存以前的文本

                  var td = $(this).parent().children("td").get(1);//获取当前行的 第一列得 td
                  var sn = td.getElementsByTagName("span")[0].innerHTML;//获取当前td 中第一个 span 标签里的内容

                   //当前td 动态添加 input 标签
                  $(this).html("<input class='iptSort' maxlength='6'  type='number' min='0' max='50000' style='width: 55px' value='" + oldStr + "'/>"); //当前的内容变为文本框

                  var input = $('.iptSort');


var length = oldStr.length;
                  input.focus();//聚焦
//input.setSelectionRange(length,length);

                  input.click(function() { //设置文本框点击事件失效
                      return false;
                  });

                  //当文本框失去焦点时变为文本
                  input.blur(function() {
                      var newText = $(this).val(); //修改后的排序


   if(parseInt(newText)>50000 ){
                          newText = 50000;
   }
   if(parseInt(newText)<0 ){
                          newText = 0;
   }

                      var iput_blur = $(this);

                      if (oldStr == newText) {
                          //当前后文本一致时,把文本框变成标签
                          objTD.html(newText);
                          iput_blur.trigger("focus").trigger("select"); //文本全选
                      }

                      //当以前的sort和新sort一样时,不进行数据的提交
                      if (oldStr != newText) {
                          //AJAX异步更新
                          var url = "${base}/admin/product/updateSort?sn="+sn+"&sort="+newText;
                          $.get(url, function(data) {
         if(data.bool == "ok"){
             //alert("sort修改成功");
                                  objTD.html(newText);
         }else{
                                  alert("sort修改失败");
                                  iput_blur.trigger("focus").trigger("select"); //文本全选
         }
                          });
                      }

                  });

                  //按下键盘的某键
                  input.keydown(function(event) {
                      var jianzhi = event.keyCode;
                      switch (jianzhi) {
                          case 13:
                              var newText = $(this).val(); //修改后的sort
                              var iput_keydown = $(this);

                              if(parseInt(newText)>50000 ){
                                  newText = 50000;
                              }
                              if(parseInt(newText)<0 ){
                                  newText = 0;
                              }


                              //当以前的sort和新sort一样时,不进行数据的提交
                              if (oldStr != newText) {
                                  //AJAX异步更新数据
                                  var url = "${base}/admin/product/updateSort?sn="+sn+"&sort="+newText ;
                                  $.get(url, function(data) {
                                      if (data.bool == "ok") {
                                          //alert("sort修改成功");
                                          objTD.html(newText);
                                      } else {
                                          alert("sort修改失败");
                                          iput_blur.trigger("focus").trigger("select"); //文本全选
                                      }
                                  });
                              } else {
                                  //当前后文本一致时,把文本框变成标签
                                  objTD.html(newText);
                              }
                              break;
                          case 27:
                              objTD.html(oldStr);
                              break;
                      }
                  });
              });
          });
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值