濮阳杆衣贸易有限公司

主頁(yè) > 知識(shí)庫(kù) > JSP 前端數(shù)據(jù)本地排序?qū)嵗a

JSP 前端數(shù)據(jù)本地排序?qū)嵗a

熱門(mén)標(biāo)簽:南昌市地圖標(biāo)注app 百度地圖添加標(biāo)注圖標(biāo)樣式 地圖標(biāo)注市場(chǎng)怎么樣 泰州泰興400電話 怎么申請(qǐng) 聊城智能電銷(xiāo)機(jī)器人外呼 企業(yè)怎么在聯(lián)通申請(qǐng)400電話 好操作的電話機(jī)器人廠家 如何用中國(guó)地圖標(biāo)注數(shù)字點(diǎn) 南京新思維電話機(jī)器人

在前端中我們經(jīng)常需要數(shù)據(jù)的排序,首先寫(xiě)引入我寫(xiě)好的js

$(function($) {
  $('#sclazzId').val($('#voId').val());
  document.getElementsByName('nameup')[0].style.display = "none";
  document.getElementsByName('nameup')[1].style.display = "none";
  document.getElementsByName('nameup')[2].style.display = "none";
  document.getElementsByName('nameup')[3].style.display = "none";
  var tabobj = document.getElementById("tbValue");
  /*
   * for (var i = 2; i  tabobj.rows.length; i++) {
   * 
   * if (tabobj.rows[i].cells[1].innerHTML == code) {
   * 
   * tabobj.rows[i].style.backgroundColor = "red";
   * 
   * break; } }
   */
});
function OnChange(code) {
  // alert(document.getElementById("drpIndustry").value+"_"+code+".html");
  window.location.href = document.getElementById("drpIndustry").value + "_"
      + code + ".html";

}

// 轉(zhuǎn)換器,將列的字段類型轉(zhuǎn)換為可以排序的類型:String,int,float
function convert(sValue, sDataType) {
  switch (sDataType) {
  case "int":
    if (sValue != "--")
      return parseInt(sValue);
    else
      return -10000000000000;
  case "float":
    if (sValue != "--")
      return parseFloat(sValue);
    else
      return -10000000000000.0;
  case "date":
    if (sValue != "--")
      return new Date(Date.parse(sValue));
    else
      return "1900-01-01";
  default:
    return sValue.toString();

  }
}

// 排序函數(shù)產(chǎn)生器,iCol表示列索引,sDataType表示該列的數(shù)據(jù)類型
function generateCompareTRs(iCol, sDataType) {

  return function compareTRs(oTR1, oTR2) {
    var vValue1 = convert(oTR1.cells[iCol].firstChild.nodeValue, sDataType);
    var vValue2 = convert(oTR2.cells[iCol].firstChild.nodeValue, sDataType);

    if (vValue1  vValue2) {
      return -1;
    } else if (vValue1 > vValue2) {
      return 1;
    } else {
      return 0;
    }
  };
}
// 排序方法
function sortTable(sTableID, iCol, sDataType) {
  if (document.getElementsByName('nameup')[parseInt(iCol) - 1].style.display == 'none') {
    document.getElementsByName('nameup')[parseInt(iCol) - 1].style.display = 'block';
    document.getElementsByName('namedown')[parseInt(iCol) - 1].style.display = 'none';
  } else {
    document.getElementsByName('nameup')[parseInt(iCol) - 1].style.display = 'none';
    document.getElementsByName('namedown')[parseInt(iCol) - 1].style.display = 'block';
  }
  var oTable = document.getElementById(sTableID);
  var oTBody = oTable.tBodies[0];
  var colDataRows = oTBody.rows;
  var aTRs = new Array;
  // 將所有列放入數(shù)組
  for (var i = 0; i  colDataRows.length; i++) {
    aTRs[i] = colDataRows[i];
  }
  // 判斷最后一次排序的列是否與現(xiàn)在要進(jìn)行排序的列相同,是的話,直接使用reverse()逆序
  if (oTable.sortCol == iCol) {
    aTRs.reverse();
  } else {
    // 使用數(shù)組的sort方法,傳進(jìn)排序函數(shù)
    aTRs.sort(generateCompareTRs(iCol, sDataType));
  }

  var oFragment = document.createDocumentFragment();
  for (var i = 0; i  aTRs.length; i++) {
    aTRs[i].cells[0].innerHTML = i + 1;
    oFragment.appendChild(aTRs[i]);
  }

  oTBody.appendChild(oFragment);
  // 記錄最后一次排序的列索引
  oTable.sortCol = iCol;
}

function detatilWork(id) {
  alert(id);
  $.post("", {
    id : id
  }, function() {

  });
}

function reflash() {
  window.location.reload(true);
}

function openSearch() {
  var name = $('#sname').val();
  var clazzId = $('#sclazzId').val();
  window.location.href = "assistantWork.action?name=" + name + "clazzId="
      + clazzId;
}

function lastPage(page) {
  var name = $('#sname').val();
  var clazzId = $('#sclazzId').val();
  page = (page - 1  0) ? 0 : (page - 1);
  window.location.href = "assistantWork.action?page=" + page + "name="
      + name + "clazzId=" + clazzId;
}
function selPage(page) {
  var name = $('#sname').val();
  var clazzId = $('#sclazzId').val();
  window.location.href = "assistantWork.action?page=" + page + "name="
      + name + "clazzId=" + clazzId;
}
function nextPage(page, pages) {
  var name = $('#sname').val();
  var clazzId = $('#sclazzId').val();
  page = (page + 1 > pages) ? pages : (page + 1);
  window.location.href = "assistantWork.action?page=" + page + "name="
      + name + "clazzId=" + clazzId;
}

function detail(id, type) {
  $.ajax({
    url : 'selectOneWork.action?id=' + id,
    async : false, // 同步請(qǐng)求
    error : function() {
      alert("失敗");
    },
    success : function(data) {
      data = eval("(" + data + ")");
      $('#workid').val(data.id);
      $('#cname').val(data.name);
      $('#sclazzIdM').val(data.clazzId);
      $('#cdescription').val(data.description);
    },
  }, 'json');
  if(type==1){
    //查看 需要改成不可編輯
    setDisabled();
  }else if(type==2){
    cleanDisabled();
  }
}

function add(){
  cleanDisabled();
}
function setDisabled(){
  $('#cname').attr("disabled",true);
  $('#sclazzIdM').attr("disabled",true);
  $('#cdescription').attr("disabled",true);
  $('#submitWork').attr("disabled",true);
}

function cleanDisabled(){
  $('#cname').attr("disabled",false);
  $('#sclazzIdM').attr("disabled",false);
  $('#cdescription').attr("disabled",false);
  $('#submitWork').attr("disabled",false);
}

在jsp頁(yè)面中我們只需要在字段中嵌入這兩div就可以實(shí)現(xiàn)視覺(jué)上的升序或降序,真正實(shí)現(xiàn)排序的是字段上面的那個(gè)點(diǎn)擊事件,事件的執(zhí)行方法在上面的腳本中都已經(jīng)寫(xiě)好了,就這么簡(jiǎn)單,你就實(shí)現(xiàn)了表格數(shù)據(jù)的本地排序,大大的減少了與服務(wù)器之間的訪問(wèn)次數(shù)。

1.另外在說(shuō)一句就是在我們的jsp中我們有的時(shí)候并不是很需要數(shù)據(jù)庫(kù)數(shù)據(jù)的格式,這個(gè)時(shí)候我們需要將數(shù)據(jù)的格式進(jìn)行轉(zhuǎn)化,轉(zhuǎn)化的方式有很多種,我們可以將數(shù)據(jù)在后臺(tái)的時(shí)候進(jìn)行格式處理,但是這樣做的話在效率上并不是很快,我們?cè)趈sp中就有這樣的標(biāo)簽

這樣我們就實(shí)現(xiàn)了日期的格式化處理,值得注意的是這里的fmt只能用我頁(yè)面上的布局,不能用工具上的格式化處理,處理過(guò)就會(huì)影響我們上面的本地排序,所以只能用我的格式

感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!

您可能感興趣的文章:
  • JSP中的PreparedStatement對(duì)象操作數(shù)據(jù)庫(kù)的使用教程
  • JSP中操作數(shù)據(jù)庫(kù)的常用SQL標(biāo)簽用法總結(jié)
  • JSP使用JDBC連接MYSQL數(shù)據(jù)庫(kù)的方法
  • JSP基于JDBC的數(shù)據(jù)庫(kù)連接類實(shí)例
  • jsp通過(guò)自定義標(biāo)簽庫(kù)實(shí)現(xiàn)數(shù)據(jù)列表顯示的方法
  • JSP實(shí)現(xiàn)從數(shù)據(jù)庫(kù)導(dǎo)出數(shù)據(jù)到Excel下載的方法

標(biāo)簽:烏蘭察布 白銀 銅川 吉林 自貢 開(kāi)封 臨汾 山南

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《JSP 前端數(shù)據(jù)本地排序?qū)嵗a》,本文關(guān)鍵詞  JSP,前端,數(shù)據(jù),本地,排序,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《JSP 前端數(shù)據(jù)本地排序?qū)嵗a》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于JSP 前端數(shù)據(jù)本地排序?qū)嵗a的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    琼结县| 鄄城县| 和平县| 台江县| 望谟县| 郁南县| 东源县| 绍兴县| 榆社县| 北京市| 军事| 常州市| 阳曲县| 阳山县| 濮阳县| 满洲里市| 平阳县| 安岳县| 莱芜市| 昂仁县| 莒南县| 平武县| 青神县| 遂宁市| 凯里市| 南雄市| 乌拉特后旗| 福泉市| 丘北县| 商河县| 高邮市| 云林县| 申扎县| 合川市| 广德县| 岳池县| 新晃| 神池县| 合肥市| 黄石市| 和政县|