提交说明10/9
This commit is contained in:
@@ -0,0 +1,433 @@
|
||||
<%@ Page Language="C#" MasterPageFile="~/N_MODEL/Page/MasterSingleCard.Master" AutoEventWireup="true"
|
||||
Codebehind="XLBJD_WBBJDXDRInfo.aspx.cs" Inherits="GThinking.U20261363_N_XLXSBJ.XLBJD_WBBJDXDRInfo"
|
||||
Title="复制内容导入" %>
|
||||
|
||||
<%@ MasterType VirtualPath="~/N_MODEL/Page/MasterSingleCard.Master " %>
|
||||
<asp:Content ID="ContentButton" ContentPlaceHolderID="cphUserToolbar" runat="server">
|
||||
<asp:Table CellPadding="0" CellSpacing="0" runat="server" ID="tbl1">
|
||||
<asp:TableRow>
|
||||
<asp:TableCell>
|
||||
<gtc:gtToolButton ID="btnQD" runat="server" Caption="确 定" ShowCaption="true" OnClick="btnQD_Click"
|
||||
OnClientClick="btnQD_OnClientClick();" Width="58px" Height="19px" />
|
||||
</asp:TableCell>
|
||||
<asp:TableCell>
|
||||
<gtc:gtToolButton ID="btnQX" runat="server" Caption="取 消" ShowCaption="true" OnClick="btnQX_Click"
|
||||
Width="58px" Height="19px" />
|
||||
</asp:TableCell>
|
||||
</asp:TableRow>
|
||||
</asp:Table>
|
||||
</asp:Content>
|
||||
<asp:Content ID="ContentHidden" ContentPlaceHolderID="cphBrand" runat="server">
|
||||
</asp:Content>
|
||||
<asp:Content ID="cntForm" ContentPlaceHolderID="CPHForm" runat="server">
|
||||
<asp:HiddenField ID="txttabledata" runat="server" />
|
||||
<asp:HiddenField ID="txtCols" runat="server" />
|
||||
<asp:HiddenField ID="txtTitle" runat="server" />
|
||||
<%--自定义系统锁定遮盖层,锁定提示信息txtDefSysLockMsg由调用脚本方法OpenDefSysLockDiv(defMsg)时赋值--%>
|
||||
<div id="DefSysLockDiv" class="GT_progress" style="display: none; position: fixed;">
|
||||
<table style="width: 100%; height: 100%;">
|
||||
<tr>
|
||||
<td align="center">
|
||||
<table class="center">
|
||||
<tr>
|
||||
<td align="center" valign="middle" id="txtDefSysLockMsg">
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<div style="overflow-x: auto;">
|
||||
<table id="myTable" runat="server">
|
||||
</table>
|
||||
</div>
|
||||
<style type="text/css">
|
||||
#ctl00_CPHForm_myTable {
|
||||
border: 1px solid black;
|
||||
border-collapse: collapse;
|
||||
}
|
||||
|
||||
#ctl00_CPHForm_myTable td {
|
||||
|
||||
border: 1px solid black;
|
||||
padding: 5px;
|
||||
}
|
||||
|
||||
#ctl00_CPHForm_myTable th {
|
||||
background-color: lightblue;
|
||||
text-align: center;
|
||||
font-weight: bold;
|
||||
text-align: center;
|
||||
font-size: 20px;
|
||||
}
|
||||
|
||||
/* 打开对话框时“正在读取数据,请稍等”的样式 */
|
||||
.GT_progress {
|
||||
font-size: 20px;
|
||||
font-family: 幼圆, 微软雅黑, 华文细黑, 黑体, 宋体;
|
||||
color: #666767;
|
||||
position: absolute;
|
||||
z-index: 1000;
|
||||
top: 0px;
|
||||
left: 0px;
|
||||
|
||||
|
||||
}
|
||||
|
||||
.GT_progress .center {
|
||||
border-bottom: 4px solid #4CB4DF;
|
||||
border-top: 2px solid #4CB4DF;
|
||||
border-left: 0px solid #4CB4DF;
|
||||
border-right: 0px solid #4CB4DF;
|
||||
width: 290px;
|
||||
height: 60px;
|
||||
background-color: white;
|
||||
}
|
||||
|
||||
.GT_progress .progressclose
|
||||
{
|
||||
cursor:pointer;
|
||||
font-family: 宋体;
|
||||
font-size:8pt;
|
||||
width: 8pt;
|
||||
}
|
||||
</style>
|
||||
|
||||
<script type="text/javascript" language="javascript">
|
||||
|
||||
function btnQD_OnClientClick(){
|
||||
// 获取表格元素
|
||||
var table = document.getElementById('ctl00_CPHForm_myTable');
|
||||
// 初始化一个空数组来存储表格数据
|
||||
var data = [];
|
||||
|
||||
// 遍历表格的每一行
|
||||
for (var i = 0; i < table.rows.length; i++) {
|
||||
var tableRow = table.rows[i];
|
||||
var rowData = {};
|
||||
|
||||
// 遍历当前行的每一列
|
||||
for (var j = 0; j < tableRow.cells.length; j++) {
|
||||
var cell = tableRow.cells[j];
|
||||
if(i === 0 || j === 0)
|
||||
{
|
||||
// 使用表头作为JSON键
|
||||
var header = table.rows[0].cells[j].innerText;
|
||||
rowData[header] = cell.innerText;
|
||||
}
|
||||
else
|
||||
{
|
||||
// 使用表头作为JSON键
|
||||
var header = table.rows[0].cells[j].childNodes[0].data;
|
||||
rowData[header] = cell.childNodes[0].value;
|
||||
}
|
||||
}
|
||||
|
||||
// 将当前行数据添加到数组中
|
||||
if(tableRow.cells.length > 0)
|
||||
data.push(rowData);
|
||||
}
|
||||
|
||||
// 将数据转换为JSON格式
|
||||
var jsonData = JSON.stringify(data);
|
||||
|
||||
document.getElementById('ctl00_CPHForm_txttabledata').value = jsonData;
|
||||
}
|
||||
|
||||
var isOldIE1 = false;
|
||||
|
||||
// 检测用户代理字符串中是否包含 "MSIE" 并且版本号小于等于7
|
||||
if (navigator.userAgent.indexOf("Chrome") === -1) {
|
||||
isOldIE1 = true;
|
||||
}
|
||||
|
||||
var columns = document.getElementById('ctl00_CPHForm_txtCols').value;
|
||||
var rows = "11";
|
||||
var stitle = document.getElementById('ctl00_CPHForm_txtTitle').value;
|
||||
//var titles = document.getElementById('ctl00_CPHForm_txtTitle').split(',');
|
||||
var titles = stitle.split(',');
|
||||
var table = document.getElementById('ctl00_CPHForm_myTable');
|
||||
//table.innerHTML = '';
|
||||
var tabwid = 620+(columns-3)*140;
|
||||
table.style.width=tabwid+'px';
|
||||
|
||||
var header = table.createTHead();
|
||||
var headerRow = header.insertRow();
|
||||
for (var i = 0; i < columns; i++) {
|
||||
var cell = headerRow.insertCell();
|
||||
cell.innerText = titles[i] || 'Title ' + (i + 1);
|
||||
cell.style.backgroundColor = 'lightblue';
|
||||
cell.style.textAlign = 'center';
|
||||
cell.style.fontSize = '15px';
|
||||
cell.style.fontWeight = 'bold';
|
||||
if(i === 0)
|
||||
{
|
||||
cell.style.width = '80px';
|
||||
}
|
||||
else if(i === 1)
|
||||
{
|
||||
cell.style.width = '200px';
|
||||
}
|
||||
else if(i === 2)
|
||||
{
|
||||
cell.style.width = '160px';
|
||||
}
|
||||
else
|
||||
{
|
||||
cell.style.width = '140px';
|
||||
}
|
||||
cell.style.height = '20px';
|
||||
cell.style.margin = '0';
|
||||
}
|
||||
|
||||
for (var i = 0; i < rows; i++) {
|
||||
var row = table.insertRow();
|
||||
for (var j = 0; j < columns; j++) {
|
||||
|
||||
var cell = i === 0 ? document.createElement('th') : row.insertCell();
|
||||
if (j === 0) {
|
||||
// 如果是第一列,添加行号并设置为不可编辑
|
||||
cell.innerText = i; // 添加行号
|
||||
cell.contentEditable = false; // 不可编辑
|
||||
cell.style.textAlign = 'center';
|
||||
} else {
|
||||
var input = document.createElement("input");
|
||||
if(j === 0)
|
||||
{
|
||||
input.style.width = '60px';
|
||||
}
|
||||
else if(j === 1)
|
||||
{
|
||||
input.style.width = '200px';
|
||||
}
|
||||
else if(j === 2)
|
||||
{
|
||||
input.style.width = '160px';
|
||||
}
|
||||
else
|
||||
{
|
||||
input.style.width = '140px';
|
||||
}
|
||||
input.style.height = '20px';
|
||||
input.type = "text";
|
||||
input.style.border = 'none';
|
||||
input.style.margin = '0';
|
||||
cell.appendChild(input);
|
||||
}
|
||||
}
|
||||
}
|
||||
if(isOldIE1)
|
||||
{
|
||||
table.onclick = function(e) {
|
||||
// 处理'click'事件的代码
|
||||
// 检查被点击的元素是否为单元格
|
||||
e = e || window.event; // 获取事件对象
|
||||
var target = e.target || e.srcElement;
|
||||
if (target.tagName === 'INPUT' ) {
|
||||
selectedCell = target;
|
||||
}
|
||||
};
|
||||
|
||||
table.onpaste = function(e) {
|
||||
e = e || window.event; // 获取事件对象
|
||||
if (selectedCell && selectedCell.tagName === 'INPUT' && selectedCell.parentElement.parentElement.rowIndex !== 0) {
|
||||
OpenDefSysLockDiv("正在处理,请稍候……");
|
||||
setTimeout(function() {CloseDefSysLockDiv();}, 30000);
|
||||
if (e.preventDefault) {
|
||||
e.preventDefault();
|
||||
} else {
|
||||
e.returnValue = false;
|
||||
}
|
||||
var clipboardData = event.clipboardData || e.clipboardData || window.clipboardData;
|
||||
setTimeout(function() {
|
||||
|
||||
if (clipboardData) {
|
||||
var pastedData = clipboardData.getData('Text');
|
||||
if (!pastedData.endsWith("\r\n"))
|
||||
pastedData = pastedData + "\r\n";
|
||||
// 解析粘贴的数据,提取每个单元格的文字内容
|
||||
var rows = pastedData.split('\n');
|
||||
|
||||
|
||||
|
||||
var rowIndex = selectedCell.parentElement.parentElement.rowIndex;
|
||||
var cellIndex = selectedCell.parentElement.cellIndex;
|
||||
|
||||
for (var i = 0; i < rows.length; i++) {
|
||||
if (rowIndex + i >= table.rows.length) {
|
||||
var newRow = table.insertRow();
|
||||
for (var j = 0; j < columns; j++) {
|
||||
var cell = i === 0 ? document.createElement('th') : newRow.insertCell();
|
||||
if (j === 0) {
|
||||
// 如果是第一列,添加行号并设置为不可编辑
|
||||
cell.innerText = cell.parentElement.rowIndex -1 ; // 添加行号
|
||||
cell.contentEditable = false; // 不可编辑
|
||||
cell.style.textAlign = 'center';
|
||||
} else {
|
||||
var input = document.createElement("input");
|
||||
if(j === 0)
|
||||
{
|
||||
input.style.width = '60px';
|
||||
}
|
||||
else if(j === 1)
|
||||
{
|
||||
input.style.width = '200px';
|
||||
}
|
||||
else if(j === 2)
|
||||
{
|
||||
input.style.width = '160px';
|
||||
}
|
||||
else
|
||||
{
|
||||
input.style.width = '140px';
|
||||
}
|
||||
|
||||
input.type = "text";
|
||||
input.style.border = 'none';
|
||||
input.style.margin = '0';
|
||||
cell.appendChild(input);
|
||||
}
|
||||
}
|
||||
}
|
||||
var cells = rows[i].split('\t');
|
||||
for (var j = 0; j < cells.length; j++) {
|
||||
if (cellIndex + j < columns) {
|
||||
table.rows[rowIndex + i].cells[cellIndex + j].children[0].value = cells[j];
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
CloseDefSysLockDiv();
|
||||
|
||||
}, 100);
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
};
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
table.addEventListener('click', function(e) {
|
||||
//let targetCell = e.target;
|
||||
|
||||
// 检查被点击的元素是否为单元格
|
||||
if (e.target.tagName === 'INPUT' && e.target.parentElement.rowIndex !== 0 && e.target.cellIndex !== 0) {
|
||||
// 移除其他单元格的选中状态
|
||||
// 添加选中样式并设置焦点
|
||||
e.target.classList.add('selected');
|
||||
e.target.contentEditable = true;
|
||||
e.target.focus();
|
||||
|
||||
selectedCell = e.target;
|
||||
}
|
||||
});
|
||||
var selectedCell = null;
|
||||
table.addEventListener('paste', function(e) {
|
||||
if (selectedCell && selectedCell.tagName === 'INPUT' && selectedCell.parentElement.parentElement.rowIndex !== 0) {
|
||||
|
||||
OpenDefSysLockDiv("正在处理,请稍候……");
|
||||
setTimeout(function() {CloseDefSysLockDiv();}, 30000);
|
||||
|
||||
e.preventDefault();
|
||||
var clipboardData = event.clipboardData || e.clipboardData || window.clipboardData;
|
||||
if (clipboardData) {
|
||||
var pastedData = clipboardData.getData('Text');
|
||||
|
||||
|
||||
setTimeout(function() {
|
||||
if (!pastedData.endsWith("\r\n"))
|
||||
pastedData = pastedData + "\r\n";
|
||||
|
||||
// 解析粘贴的数据,提取每个单元格的文字内容
|
||||
var rows = pastedData.split('\n');
|
||||
|
||||
var rowIndex = selectedCell.parentElement.parentElement.rowIndex;
|
||||
var cellIndex = selectedCell.parentElement.cellIndex;
|
||||
|
||||
for (var i = 0; i < rows.length; i++) {
|
||||
if (rowIndex + i >= table.rows.length) {
|
||||
|
||||
var newRow = table.insertRow();
|
||||
for (var j = 0; j < columns; j++) {
|
||||
var cell = i === 0 ? document.createElement('th') : newRow.insertCell();
|
||||
if (j === 0) {
|
||||
// 如果是第一列,添加行号并设置为不可编辑
|
||||
cell.innerText = cell.parentElement.rowIndex -1 ; // 添加行号
|
||||
cell.contentEditable = false; // 不可编辑
|
||||
cell.style.textAlign = 'center';
|
||||
} else {
|
||||
var input = document.createElement("input");
|
||||
if(j === 0)
|
||||
{
|
||||
input.style.width = '60px';
|
||||
}
|
||||
else if(j === 1)
|
||||
{
|
||||
input.style.width = '200px';
|
||||
}
|
||||
else if(j === 2)
|
||||
{
|
||||
input.style.width = '160px';
|
||||
}
|
||||
else
|
||||
{
|
||||
input.style.width = '140px';
|
||||
}
|
||||
input.type = "text";
|
||||
input.style.border = 'none';
|
||||
input.style.margin = '0';
|
||||
cell.appendChild(input);
|
||||
}
|
||||
}
|
||||
}
|
||||
var cells = rows[i].split('\t');
|
||||
for (var j = 0; j < cells.length; j++) {
|
||||
if (cellIndex + j < columns) {
|
||||
table.rows[rowIndex + i].cells[cellIndex + j].children[0].value = cells[j];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
CloseDefSysLockDiv();
|
||||
|
||||
}, 100);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
//显示自定义系统锁定遮盖层
|
||||
function OpenDefSysLockDiv(defMsg)
|
||||
{
|
||||
document.getElementById('DefSysLockDiv').style.display="block";
|
||||
document.getElementById('DefSysLockDiv').style.width = document.documentElement.clientWidth+"px";
|
||||
document.getElementById('DefSysLockDiv').style.height = document.documentElement.clientHeight+"px";
|
||||
document.getElementById('DefSysLockDiv').style.zIndex=99999;
|
||||
|
||||
if (defMsg != null)
|
||||
{
|
||||
document.getElementById('txtDefSysLockMsg').innerText = defMsg;
|
||||
}
|
||||
else
|
||||
document.getElementById('txtDefSysLockMsg').innerText = "系统锁定中...";
|
||||
}
|
||||
//关闭自定义系统锁定遮盖层
|
||||
function CloseDefSysLockDiv()
|
||||
{
|
||||
document.getElementById('DefSysLockDiv').style.display="none";
|
||||
}
|
||||
|
||||
</script>
|
||||
|
||||
</asp:Content>
|
||||
Reference in New Issue
Block a user