【油猴脚本】天津工业大学URP教务系统查看本学期详细成绩V2.0(平时、期中、期末、实验等详细分) |
您所在的位置:网站首页 › 衡水学院urp综合教务系统 › 【油猴脚本】天津工业大学URP教务系统查看本学期详细成绩V2.0(平时、期中、期末、实验等详细分) |
warning:
这篇文章距离上次修改已过180天,其中的内容可能已经有所变动。
此方法仅限电脑端,2024年1月14日已失效 快捷安装地址(需浏览器已安装油猴脚本):https://greasyfork.org/zh-CN/scripts/484461 使用效果:V1旧版效果图V2新版效果图适用范围:“本学期成绩”页面https://jwxs.tiangong.edu.cn/student/integratedQuery/scoreQuery/thisTermScores/index 新建脚本方法:1.在Chrome或Edge浏览器内安装油猴Tampermonkey插件(具体方法可以百度/哔哩哔哩寻找)2.找到脚本图标,点击“管理面板”,如下图 点击脚本图标后页面3.右上方区域找到“+”的图标,点击,如下图示意图4.将下方代码覆盖掉原有内容,按下Ctrl+S快捷键保存5.打开“本学期成绩”页面油猴脚本代码(安装油猴脚本方法略):// ==UserScript== // @name 强制开启详细分数查询 // @author Drzad // @match https://jwxs.tiangong.edu.cn/student/integratedQuery/* // @description 适用于天津工业大学URP高校教学管理与服务平台“本学期成绩查询列表”页面,能够自动显示详细分数和分数代码 // @grant none // @version 2.1 // ==/UserScript== (function() { 'use strict'; $("#showScoreDetail").val("1"); // 成绩类别映射 const scoreCategoryMapping = { "001-1": "课堂成绩(平时)", "001-2": "课堂成绩(期中)", "001-3": "课堂成绩(期末)", "002-1": "实验成绩(平时)", "002-2": "实验成绩(期中)", "002-3": "实验成绩(期末)", "003-1": "实践成绩(平时)", "003-2": "实践成绩(期中)", "003-3": "实践成绩(期末)" }; // 创建一个观察者对象 let observer = new MutationObserver((mutations, obs) => { let table = $('#scoretbody tr'); if (table.length) { // 表格存在,执行脚本 modifyTableAndRunAjax(); // 停止观察 obs.disconnect(); } }); // 配置观察者选项:仅监视子元素的变动 let config = { childList: true, subtree: true }; // 选择需要观察变动的节点 let targetNode = document.body; // 启动观察者 observer.observe(targetNode, config); // 修改表格并运行AJAX的函数 function modifyTableAndRunAjax() { // 向表头添加新列 $('table.table thead tr').append('成绩明细'); // 向每个表格行添加新数据列 $('table.table tbody tr').append(''); // 对内的每个元素进行遍历 let rows = $('table.table tbody tr'); rows.each(function() { let row = $(this); let onclickElement = row.find('[onclick]'); if (onclickElement.length) { let onclickArgs = onclickElement.attr('onclick'); let argsMatch = onclickArgs.match(/\((.*?)\)/); if (argsMatch && argsMatch[1]) { let args = argsMatch[1].split(',').map(arg => arg.trim().replace(/"/g, '')); if (args.length >= 4) { let zxjxjhh = args[0]; let kch = args[1]; let kxh = args[2]; let kssj = args[3]; // 发送Ajax请求 $.ajax({ url: "/student/integratedQuery/scoreQuery/subitemScore/look", type: "post", data: `zxjxjhh=${zxjxjhh}&kch=${kch}&kxh=${kxh}&kssj=${kssj}¶m=1`, dataType: "json", success: function (response) { if (response.scoreDetailList && response.scoreDetailList.length > 0) { let scoreDetails = response.scoreDetailList.map(detail => { let scoreCategory = scoreCategoryMapping[detail.id.scoreSubItemCode] || detail.id.scoreSubItemCode; return `${scoreCategory}: ${detail.subItemScore}`; }).join(''); // 在新添加的单元格中显示成绩明细 row.find('.score-details').html(scoreDetails); } }, error: function (error) { console.log('请求失败: ', error); } }); } } } else { // 修复未定成绩时候的多余格 row.find('td:empty:first').remove(); } }); } })();注:此方法仅供学习交流使用,免费分享,脚本开源,不可用于任何形式的销售。 |
今日新闻 |
点击排行 |
|
推荐新闻 |
图片新闻 |
|
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭 |