You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

search.js 23 kB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585
  1. var token;
  2. if(isEmpty(token)){
  3. var meta = $("meta[name=_uid]");
  4. if(!isEmpty(meta)){
  5. token = meta.attr("content");
  6. console.log("token is uid:" + token);
  7. }
  8. }
  9. var html =document.documentElement;
  10. var lang = html.attributes["lang"]
  11. var isZh = true;
  12. if(lang != null && lang.nodeValue =="en-US" ){
  13. console.log("the language is " + lang.nodeValue);
  14. isZh=false;
  15. }else{
  16. console.log("default lang=zh");
  17. }
  18. function isEmpty(str){
  19. if(typeof str == "undefined" || str == null || str == ""){
  20. return true;
  21. }
  22. return false;
  23. }
  24. var itemType={
  25. "1":"repository",
  26. "2":"issue",
  27. "3":"user",
  28. "4":"org",
  29. "5":"dataset",
  30. "6":"pr"
  31. };
  32. var sortBy={
  33. "11":"updated_unix.keyword",
  34. "12":"num_watches.keyword",
  35. "13":"num_stars.keyword",
  36. "14":"num_forks.keyword",
  37. "21":"updated_unix.keyword",
  38. "31":"created_unix.keyword",
  39. "32":"name",
  40. "41":"created_unix.keyword",
  41. "42":"name",
  42. "51":"download_times.keyword",
  43. "61":"updated_unix.keyword"
  44. };
  45. var currentPage = 1;
  46. var pageSize = 15;
  47. var currentSearchTableName ="";
  48. var currentSearchKeyword="";
  49. var currentSearchSortBy="";
  50. var OnlySearchLabel=false;
  51. function searchItem(type,sortType){
  52. console.log("enter here.");
  53. currentSearchKeyword = document.getElementById("keyword_input").value;
  54. if(!isEmpty(currentSearchKeyword)){
  55. currentSearchTableName = itemType[type];
  56. doSearch(itemType[type],currentSearchKeyword,page,pageSize,false,sortBy[sortType]);
  57. }
  58. }
  59. function search(){
  60. console.log("enter here.");
  61. var keyword = document.getElementById("keyword_input").value;
  62. var page =1;
  63. var pageSize=15;
  64. if(!isEmpty(keyword)){
  65. doSearch("repository",keyword,page,pageSize,false,sortBy[11]);
  66. doSearch("issue",keyword,page,pageSize,true,"");
  67. doSearch("user",keyword,page,pageSize,true,"");
  68. doSearch("org",keyword,page,pageSize,true,"");
  69. doSearch("dataset",keyword,page,pageSize,true,"");
  70. doSearch("pr",keyword,page,pageSize,true,"");
  71. }
  72. }
  73. function doSearch(tableName,keyword,page,pageSize=15,onlyReturnNum=true,sortBy="",OnlySearchLabel=false){
  74. $.ajax({
  75. type:"GET",
  76. url:"/all/dosearch/",
  77. headers: {
  78. authorization:token,
  79. },
  80. dataType:"json",
  81. data:{
  82. 'TableName': tableName,
  83. 'Key': keyword,
  84. 'Page': page,
  85. 'PageSize': pageSize,
  86. 'OnlyReturnNum':onlyReturnNum,
  87. 'SortBy':sortBy,
  88. 'OnlySearchLabel':OnlySearchLabel
  89. },
  90. async:true,
  91. success:function(json){
  92. console.log(json);
  93. displayResult(tableName,page,json,onlyReturnNum,keyword);
  94. },
  95. error:function(response) {
  96. console.log(response);
  97. }
  98. });
  99. }
  100. function displayResult(tableName,page,jsonResult,onlyReturnNum,keyword){
  101. if(tableName == "repository") {
  102. displayRepoResult(page,jsonResult,onlyReturnNum,keyword);
  103. } else if (tableName == "issue") {
  104. displayIssueResult(page,jsonResult,onlyReturnNum,keyword);
  105. } else if (tableName == "user") {
  106. displayUserResult(page,jsonResult,onlyReturnNum,keyword);
  107. } else if (tableName == "org") {
  108. displayOrgResult(page,jsonResult,onlyReturnNum,keyword);
  109. } else if (tableName == "dataset") {
  110. displayDataSetResult(page,jsonResult,onlyReturnNum,keyword);
  111. } else if (tableName == "pr") {
  112. displayPrResult(page,jsonResult,onlyReturnNum,keyword);
  113. }
  114. setPage(jsonResult,pageSize);
  115. }
  116. function displayPrResult(page,jsonResult,onlyReturnNum,keyword){
  117. var data = jsonResult.Result;
  118. var total = jsonResult.Total;
  119. $('#pr_total').text(total);
  120. if(!onlyReturnNum){
  121. setActivate("pr_item");
  122. $('#keyword_desc').text(keyword);
  123. $('#obj_desc').text("合并请求");
  124. $('#child_total').text(total);
  125. setIssueOrPrInnerHtml(data);
  126. }
  127. }
  128. var categoryDesc={
  129. "computer_vision":"计算机视觉",
  130. "natural_language_processing":"自然语言处理",
  131. "speech_processing":"语音处理",
  132. "computer_vision_natural_language_processing":"计算机视觉、自然语言处理"
  133. };
  134. var taskDesc={
  135. "machine_translation":"机器翻译",
  136. "question_answering_system":"问答系统",
  137. "information_retrieval":"信息检索",
  138. "knowledge_graph":"知识图谱",
  139. "text_annotation":"文本标注",
  140. "text_categorization":"文本分类",
  141. "emotion_analysis":"情感分析",
  142. "language_modeling":"语言建模",
  143. "speech_recognition":"语音识别",
  144. "automatic_digest":"自动文摘",
  145. "information_extraction":"信息抽取",
  146. "description_generation":"说明生成",
  147. "image_classification":"图像分类",
  148. "face_recognition":"人脸识别",
  149. "image_search":"图像搜索",
  150. "target_detection":"目标检测",
  151. "image_description_generation":"图像描述生成",
  152. "vehicle_license_plate_recognition":"车辆车牌识别",
  153. "medical_image_analysis":"医学图像分析",
  154. "unmanned":"无人驾驶",
  155. "unmanned_security":"无人安防",
  156. "drone":"无人机",
  157. "vr_ar":"VR/AR",
  158. "2_d_vision":"2-D视觉",
  159. "2_5_d_vision":"2.5-D视觉",
  160. "3_d_reconstruction":"3D重构",
  161. "image_processing":"图像处理",
  162. "video_processing":"视频处理",
  163. "visual_input_system":"视觉输入系统",
  164. "speech_coding":"语音编码",
  165. "speech_enhancement":"语音增强",
  166. "speech_recognition":"语音识别",
  167. "speech_synthesis":"语音合成"
  168. };
  169. function displayDataSetResult(page,jsonResult,onlyReturnNum,keyword){
  170. var data = jsonResult.Result;
  171. var total = jsonResult.Total;
  172. $('#dataset_total').text(total);
  173. if(!onlyReturnNum){
  174. setActivate("dataset_item");
  175. $('#keyword_desc').text(keyword);
  176. $('#obj_desc').text("数据集");
  177. $('#child_total').text(total);
  178. var sortHtml = "";
  179. sortHtml +="<a class=\"item\" href=\"javascript:searchItem(5,51);\" tabindex=\"-1\" role=\"menuitem\" id=\"menuitem_1\">下载次数</a>";
  180. document.getElementById("sort_type").innerHTML=sortHtml;
  181. var html = "";
  182. var currentTime = new Date().getTime();
  183. for(var i = 0; i < data.length;i++){
  184. var recordMap = data[i];
  185. html += "<div class=\"item\">";
  186. html += " <div class=\"content\">";
  187. html += " <div class=\"ui right metas\">" ;
  188. if(!isEmpty(recordMap["category"])){
  189. html += " <span class=\"text grey\"><svg class=\"svg octicon-tasklist\" width=\"16\" height=\"16\" aria-hidden=\"true\"><use xlink:href=\"#octicon-tasklist\" /></svg> " +recordMap["category"]+ "</span>";
  190. }
  191. if(!isEmpty(recordMap["task"])){
  192. html += " <span class=\"text grey\"><svg class=\"svg octicon-tag\" width=\"16\" height=\"16\" aria-hidden=\"true\"><use xlink:href=\"#octicon-tag\" /></svg>" +recordMap["task"]+ "</span>";
  193. }
  194. html += " <span class=\"text grey\"><i class=\"ri-fire-line\"></i> " +recordMap["download_times"] + "</span> ";
  195. html +=" </div>";
  196. html += " <div class=\"ui header\">";
  197. html += " <a class=\"name\" href=\"/" +recordMap["repoUrl"] +"/datasets?type=0\">" + recordMap["repoUrl"] + "</a>";
  198. html +=" <span class=\"middle\"><svg class=\"svg octicon-repo-clone\" width=\"16\" height=\"16\" aria-hidden=\"true\"><use xlink:href=\"#octicon-repo-clone\"></use></svg></span>";
  199. html +=" </div>";
  200. html += " <div class=\"description\">";
  201. html += " <p class=\"has-emoji\"> " + recordMap["title"] + "</p>";
  202. if(!isEmpty(recordMap["file_name"])){
  203. html += " <p class=\"has-emoji\"> " + recordMap["file_name"] + "</p>";
  204. }
  205. html +=" <p class=\"time\">";
  206. html +=" <span class=\"am-ml-10\"></span> 最后更新于 <span class=\"time-since poping up\" title=\"\" data-content=\"\" data-variation=\"inverted tiny\">" + getTime(recordMap["created_unix"],currentTime) +"</span>";
  207. html +=" </p>";
  208. html +=" </div>";
  209. html +=" </div>";
  210. html +="</div>";
  211. }
  212. document.getElementById("child_search_item").innerHTML=html;
  213. }
  214. }
  215. function displayOrgResult(page,jsonResult,onlyReturnNum,keyword){
  216. var data = jsonResult.Result;
  217. var total = jsonResult.Total;
  218. $('#org_total').text(total);
  219. if(!onlyReturnNum){
  220. setActivate("org_item");
  221. $('#keyword_desc').text(keyword);
  222. $('#obj_desc').text("组织");
  223. $('#child_total').text(total);
  224. var sortHtml = "";
  225. sortHtml +="<a class=\"item\" href=\"javascript:searchItem(4,41);\" tabindex=\"-1\" role=\"menuitem\" id=\"menuitem_1\">加入时间</a>";
  226. sortHtml +="<a class=\"item\" href=\"javascript:searchItem(4,42);\" tabindex=\"-1\" role=\"menuitem\" id=\"menuitem_2\">名称自然序</a>";
  227. document.getElementById("sort_type").innerHTML=sortHtml;
  228. var html = "";
  229. var currentTime = new Date().getTime();
  230. for(var i = 0; i < data.length;i++){
  231. var recordMap = data[i];
  232. html += "<div class=\"item members\">";
  233. html += "<img class=\"ui avatar image\" src=\"" + recordMap["avatar"] + "\"></img>";
  234. html += " <div class=\"content\">";
  235. html += " <div class=\"ui header\">";
  236. html += " <a class=\"name\" href=\"/" + recordMap["real_name"] +"\">" + recordMap["name"] + "</a>";
  237. html +=" </div>";
  238. html += " <div class=\"description\">";
  239. html += " <p class=\"has-emoji\"> " + recordMap["description"] + "</p>";
  240. html +=" <p class=\"has-emoji\">";
  241. html +=" <i class=\"ri-map-pin-2-line\"></i> " + recordMap["location"];
  242. html +=" <span class=\"am-ml-10\"></span>";
  243. if(!isEmpty(recordMap["website"]) && recordMap["website"] != "null"){
  244. html +=" <i class=\"ri-links-line\"></i>" + "<a href=\""+ recordMap["website"] + "\" target=\"_blank\">" + recordMap["website"] + "</a>";
  245. }
  246. html +=" <i class=\"ri-time-line am-ml-10\"></i> 加入于 ";
  247. var userAddDate = new Date(recordMap["created_unix"]*1000);
  248. html += monthDisplay[userAddDate.getMonth()] + " " + userAddDate.getDay() + " " + userAddDate.getFullYear();
  249. html +=" </p>";
  250. html +=" </div>";
  251. html +=" </div>";
  252. html +="</div>";
  253. }
  254. document.getElementById("child_search_item").innerHTML=html;
  255. }
  256. }
  257. var monthDisplay=new Array("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Spt","Oct","Nov","Dec");
  258. function displayUserResult(page,jsonResult,onlyReturnNum,keyword){
  259. var data = jsonResult.Result;
  260. var total = jsonResult.Total;
  261. $('#user_total').text(total);
  262. if(!onlyReturnNum){
  263. setActivate("user_item");
  264. $('#keyword_desc').text(keyword);
  265. $('#obj_desc').text("用户");
  266. $('#child_total').text(total);
  267. var sortHtml = "";
  268. sortHtml +="<a class=\"item\" href=\"javascript:searchItem(3,31);\" tabindex=\"-1\" role=\"menuitem\" id=\"menuitem_1\">加入时间</a>";
  269. sortHtml +="<a class=\"item\" href=\"javascript:searchItem(3,32);\" tabindex=\"-1\" role=\"menuitem\" id=\"menuitem_2\">名称自然序</a>";
  270. document.getElementById("sort_type").innerHTML=sortHtml;
  271. var html = "";
  272. var currentTime = new Date().getTime();
  273. for(var i = 0; i < data.length;i++){
  274. var recordMap = data[i];
  275. html += "<div class=\"item members\">";
  276. html += "<img class=\"ui avatar image\" src=\"" + recordMap["avatar"] + "\"></img>";
  277. html += " <div class=\"content\">";
  278. html += " <div class=\"ui header\">";
  279. html += " <a class=\"name\" href=\"/" + recordMap["real_name"] +"\">" + recordMap["name"] + "</a>";
  280. html +=" </div>";
  281. html += " <div class=\"description\">";
  282. html += " <p class=\"has-emoji\"> " + recordMap["description"] + "</p>";
  283. html +=" <p class=\"has-emoji\">";
  284. html +=" <i class=\"ri-mail-line\"></i>" + recordMap["email"];
  285. html +=" <i class=\"ri-time-line am-ml-10\"></i> 加入于 ";
  286. var userAddDate = new Date(recordMap["created_unix"]*1000);
  287. html += monthDisplay[userAddDate.getMonth()] + " " + userAddDate.getDay() + " " + userAddDate.getFullYear();
  288. html +=" </p>";
  289. html +=" </div>";
  290. html +=" </div>";
  291. html +="</div>";
  292. }
  293. document.getElementById("child_search_item").innerHTML=html;
  294. }
  295. }
  296. function setIssueOrPrInnerHtml(data){
  297. var sortHtml = "";
  298. sortHtml +="<a class=\"item\" href=\"javascript:searchItem(2,21);\" tabindex=\"-1\" role=\"menuitem\" id=\"menuitem_1\">最近更新</a>";
  299. document.getElementById("sort_type").innerHTML=sortHtml;
  300. var html = "";
  301. var currentTime = new Date().getTime();
  302. for(var i = 0; i < data.length;i++){
  303. var recordMap = data[i];
  304. html += "<div class=\"item\">";
  305. html += " <div class=\"content\">";
  306. html += " <div class=\"ui header\">";
  307. html += " <a class=\"name\" href=\"/" + recordMap["repoUrl"] +"\">" + recordMap["name"] + "</a>";
  308. html +=" </div>";
  309. html += " <div class=\"description\">";
  310. html += " <p class=\"has-emoji\"> " + recordMap["content"] + "</p>";
  311. html +=" <p class=\"time\">";
  312. html +=" <i class=\"ri-code-box-line\"></i>";
  313. html +=" <a class=\"am-text grey\" href=\"/" + recordMap["repoUrl"] +"/" + recordMap["id"] + "\"> " + recordMap["repoUrl"] +"#" + recordMap["id"] + "</a>";
  314. html +=" <i class=\"ri-information-line am-ml-10\"></i> ";
  315. if(isEmpty(recordMap["is_closed"]) || recordMap["is_closed"]=="f"){
  316. html += "关闭";
  317. }else{
  318. html += "开启中";
  319. }
  320. html +=" <span class=\"am-ml-10\"></span> 最后更新于 <span class=\"time-since poping up\" title=\"\" data-content=\"\" data-variation=\"inverted tiny\">" + getTime(recordMap["updated_unix"],currentTime) +"</span>";
  321. html +=" </p>";
  322. html +=" </div>";
  323. html +=" </div>";
  324. html +="</div>";
  325. }
  326. document.getElementById("child_search_item").innerHTML=html;
  327. }
  328. function displayIssueResult(page,jsonResult,onlyReturnNum,keyword){
  329. var data = jsonResult.Result;
  330. var total = jsonResult.Total;
  331. $('#issue_total').text(total);
  332. if(!onlyReturnNum){
  333. setActivate("issue_item");
  334. $('#keyword_desc').text(keyword);
  335. $('#obj_desc').text("任务");
  336. $('#child_total').text(total);
  337. setIssueOrPrInnerHtml(data);
  338. }
  339. }
  340. function setActivate(name){
  341. $('#repo_item').removeClass("active");
  342. $('#user_item').removeClass("active");
  343. $('#issue_item').removeClass("active");
  344. $('#dataset_item').removeClass("active");
  345. $('#org_item').removeClass("active");
  346. $('#pr_item').removeClass("active");
  347. var tmp = "#" + name;
  348. $(tmp).addClass("active");
  349. }
  350. function displayRepoResult(page,jsonResult,onlyReturnNum,keyword){
  351. var data = jsonResult.Result;
  352. var total = jsonResult.Total;
  353. $('#repo_total').text(total);
  354. if(!onlyReturnNum){
  355. setActivate("repo_item");
  356. $('#keyword_desc').text(keyword);
  357. $('#obj_desc').text("项目");
  358. $('#child_total').text(total);
  359. var sortHtml = "";
  360. sortHtml +="<a class=\"item\" href=\"javascript:searchItem(1,11);\" tabindex=\"-1\" role=\"menuitem\" id=\"menuitem_1\">最近更新</a>";
  361. sortHtml +="<a class=\"item\" href=\"javascript:searchItem(1,12);\" tabindex=\"-1\" role=\"menuitem\" id=\"menuitem_1\">关注数</a>";
  362. sortHtml +="<a class=\"item\" href=\"javascript:searchItem(1,13);\" tabindex=\"-1\" role=\"menuitem\" id=\"menuitem_1\">点赞数</a>";
  363. sortHtml +="<a class=\"item\" href=\"javascript:searchItem(1,14);\" tabindex=\"-1\" role=\"menuitem\" id=\"menuitem_1\">Fork数</a>";
  364. document.getElementById("sort_type").innerHTML=sortHtml;
  365. var html = "";
  366. var currentTime = new Date().getTime();
  367. for(var i = 0; i < data.length;i++){
  368. var recordMap = data[i];
  369. html += "<div class=\"item\">";
  370. if(!isEmpty(recordMap['avatar'])){
  371. html += "<img class=\"ui avatar image\" src=\"" + recordMap['avatar'] + "\">";
  372. }
  373. html += " <div class=\"content\">";
  374. html += " <div class=\"ui header\">";
  375. html += " <a class=\"name\" href=\"/" + recordMap["owner_name"] + "/" + recordMap["real_name"] +"\"> <span class=\"highlight\">" + recordMap["owner_name"] +"</span> <span>/</span> <strong>" + recordMap["name"] + "</strong></a>";
  376. html +=" <span class=\"middle\"><svg class=\"svg octicon-repo-clone\" width=\"16\" height=\"16\" aria-hidden=\"true\"><use xlink:href=\"#octicon-repo-clone\"></use></svg></span>";
  377. html +=" </div>";
  378. html += " <div class=\"description\">";
  379. html += " <p class=\"has-emoji\"> " + recordMap["description"] + "</p>";
  380. html += " <div class=\"ui tags\">";
  381. if(!isEmpty(recordMap["topics"]) && recordMap["topics"] !="null"){
  382. for(var j = 0; j < recordMap["topics"].length;j++){
  383. //function doSearch(tableName,keyword,page,pageSize=15,onlyReturnNum=true,sortBy){
  384. html +=" <a href=\"javascript:doSearch('repository','" + recordMap["topics"][j] + "',1,15,false,'updated_unix.keyword',true);\"><div class=\"ui small label topic\">"+ recordMap["topics"][j] + "</div></a>";
  385. }
  386. }
  387. html +=" </div>";
  388. html +=" <p class=\"time\">";
  389. html +=" <i class=\"ri-star-line\"></i>" + recordMap["num_stars"] + "<i class=\"ri-git-branch-line am-ml-10\"></i>" + recordMap["num_forks"];
  390. html +=" 最后更新于 <span class=\"time-since poping up\" title=\"\" data-content=\"\" data-variation=\"inverted tiny\">" + getTime(recordMap["updated_unix"],currentTime) +"</span>";
  391. if(!isEmpty(recordMap["lang"])){
  392. html +=" <span class=\"text grey am-ml-10\"><i class=\"color-icon\" style=\"background-color: #3572A5\"></i>" + recordMap["lang"] + "</span>";
  393. }
  394. html +=" </p>";
  395. html +=" </div>";
  396. html +=" </div>";
  397. html +="</div>";
  398. }
  399. document.getElementById("child_search_item").innerHTML=html;
  400. }
  401. }
  402. function getTime(UpdatedUnix,currentTime){
  403. UpdatedUnix = UpdatedUnix;
  404. currentTime = currentTime / 1000;
  405. var timeEscSecond = currentTime - UpdatedUnix;
  406. if( timeEscSecond < 0){
  407. timeEscSecond = 1;
  408. }
  409. console.log("currentTime=" + currentTime + " updateUnix=" + UpdatedUnix);
  410. var hours= Math.floor(timeEscSecond / 3600);
  411. //计算相差分钟数
  412. var leave2 = Math.floor(timeEscSecond % (3600)); //计算小时数后剩余的秒数
  413. var minutes= Math.floor(leave2 / 60);//计算相差分钟数
  414. var leave3=Math.floor(leave2 % 60); //计算分钟数后剩余的秒数
  415. var seconds= leave3;
  416. if(hours == 0 && minutes == 0){
  417. return seconds + getRepoOrOrg(6,isZh);
  418. }else{
  419. if(hours > 0){
  420. if(hours >= 24){
  421. return Math.ceil(hours/24) + getRepoOrOrg(7,isZh);
  422. }else{
  423. return hours + getRepoOrOrg(4,isZh);
  424. }
  425. }else{
  426. return minutes + getRepoOrOrg(5,isZh);
  427. }
  428. }
  429. }
  430. function getRepoOrOrg(key,isZhLang){
  431. if(isZhLang){
  432. return repoAndOrgZH[key];
  433. }else{
  434. return repoAndOrgEN[key];
  435. }
  436. }
  437. var repoAndOrgZH={
  438. "1":"项目",
  439. "2":"成员",
  440. "3":"团队",
  441. "4":"小时前",
  442. "5":"分钟前",
  443. "6":"秒前",
  444. "7":"天前"
  445. };
  446. var repoAndOrgEN={
  447. "1":"repository",
  448. "2":"Members ",
  449. "3":"Teams",
  450. "4":" hours ago",
  451. "5":" minutes ago",
  452. "6":" seconds ago",
  453. "7":" days ago"
  454. };
  455. function page(current){
  456. //function doSearch(tableName,keyword,page,pageSize=15,onlyReturnNum=true,sortBy="",OnlySearchLabel=false){
  457. doSearch(currentSearchTableName,currentSearchKeyword,current,pageSize,false,currentSearchSortBy,OnlySearchLabel);
  458. }
  459. function nextPage(){
  460. var current = $('#currentPage').text();
  461. console.log("current=" + current);
  462. page(current,pageSize);
  463. }
  464. function prePage(){
  465. var current =$('#currentPage').text();
  466. console.log("current=" + current);
  467. if(current > 1){
  468. console.log("current=" + (current - 2));
  469. page(current - 2,pageSize);
  470. }
  471. }
  472. function goPage(){
  473. var goNum = $('#goNum').val();
  474. var pageTotal = $("#totalNum").text();
  475. var pageNum = parseInt(pageTotal/pageSize);
  476. if(pageTotal%pageSize!=0){
  477. pageNum += 1;
  478. }else {
  479. pageNum = pageNum;
  480. }
  481. if (goNum<=0){
  482. alert("请输入大于0的数值");
  483. }
  484. else if(goNum<=pageNum){
  485. page(goNum - 1,pageSize);
  486. }
  487. else{
  488. alert("不能超出总页码!");
  489. }
  490. }
  491. function setPage(pageData,pageSize,currentPage){
  492. if (isEmpty(pageData)){
  493. return;
  494. }
  495. var startIndex = currentPage * pageSize;
  496. if(pageData.Total > 0){
  497. startIndex = startIndex + 1;
  498. }
  499. $('#startIndex').text(startIndex);
  500. $('#endIndex').text(pageData.current * pageSize + pageData.data.length);
  501. $('#totalNum').text(pageData.total);
  502. $('#displayPage1').text(pageData.current + 1);
  503. console.log("set prePage status, pageData.current=" + pageData.current);
  504. if(pageData.current == 0){
  505. console.log("set prePage disabled.");
  506. $('#prePage').removeAttr("href");
  507. }
  508. else{
  509. $('#prePage').attr("href","javascript:prePage()");
  510. }
  511. if((pageData.current + 1) * pageSize >= pageData.total){
  512. console.log("set nextPage disabled.");
  513. $('#nextPage').removeAttr("href");
  514. }
  515. else{
  516. $('#nextPage').attr("href","javascript:nextPage()");
  517. }
  518. var pageTotal = pageData.total;
  519. var pageNum = parseInt(pageTotal/pageSize);
  520. if(pageTotal%pageSize!=0){
  521. pageNum += 1;
  522. }else {
  523. pageNum = pageNum;
  524. }
  525. $("#totalPageNum").text(pageNum);
  526. }