点击HMTL页面中的表格td里面的文本框,怎么得到当前点击的行数和列数用JavaScript实现。

点击HMTL页面中的表格td里面的文本框,怎么得到当前点击的行数和列数用JavaScript实现。,第1张

你直接把这个拷贝到一个html文件中,打开就可以看效果,我建议你在生成table的时候可以把text的框加一个id,id中包含它属于的行和列,这样在点击text的时候可以很快的得到它属于的行和列。

<html>

<script>

function showRowAndCol(i, j) {

i = i + 1; //row number;

j = j + 1; //column number

documentgetElementById("currentInput")innerText = "text is at row: " + i + ", column " + j;

}

function getRowColNumber(textObj){

var td = textObjparentNode;

var tr = tdparentNode;

var table = trparentNode;

for (var i = 0; i < tablerowslength; i++) {

var row = tablerows[i];

if (row == tr) {

for (var j = 0; j < rowchildrenlength; j++) {

if (rowchildren[j] == td){

showRowAndCol(i, j);

return;

}

}

}

}

}

</script>

<body>

<div>

<span id="currentInput"></span>

<table border="1">

<tr>

<td width="38px;">

1

</td>

<td>

f

</td>

<td>

<input type="text" onclick="getRowColNumber(this)"/>

</td>

</tr>

<tr>

<td>

2

</td>

<td>

<input type="text" onclick="getRowColNumber(this)"/>

</td>

<td>

g

</td>

</tr>

<tr>

<td>

<input type="text" onclick="getRowColNumber(this)"/>

</td>

<td>

3

</td>

<td>

p

</td>

</tr>

<tr>

<td>

4

</td>

<td>

r

</td>

<td>

<input type="text" onclick="getRowColNumber(this)"/>

</td>

</tr>

<tr>

<td>

5

</td>

<td>

<input type="text" onclick="getRowColNumber(this)"/>

</td>

<td>

t

</td>

</tr>

<tr>

<td>

6

</td>

<td>

g

</td>

<td>

<input type="text" onclick="getRowColNumber(this)"/>

</td>

</tr>

</table>

<div>

</body>

</html>

2楼的兄弟,你算列数的方法也太牛逼了吧,那要是文本 有几百万个字符,你那循环要几百万次呀。

最简单的得到行和列的方法:

int totalline = textBox1GetLineFromCharIndex(textBox1TextLength) + 1;//得到总行数。该行数会随着文本框的大小改变而改变;若只认回车符为一行(不考虑排版变化)请用 总行数=textBox1LinesLength;(记事本2是这种方式)

int index = textBox1GetFirstCharIndexOfCurrentLine();//得到当前行第一个字符的索引

int line = textBox1GetLineFromCharIndex(index) + 1;//得到当前行的行号,从0开始,习惯是从1开始,所以+1

int col = textBox1SelectionStart - index + 1;//SelectionStart得到光标所在位置的索引 减去 当前行第一个字符的索引 = 光标所在的列数(从0开始)

private void Form1_Load(object sender, EventArgs e)

{

int j=0;

label1Text= FileRowText(@"c:\updatedat",2, ref j);

}

#region 获取文本某行数据

///

/// 获取文本文件某行数据

///

/// 文本文件路径

/// 第几行

/// 返回总行数

///

private string FileRowText(string filePath,int i, ref int j)

{

StreamReader sr = FileOpenText(filePath);

string str = "";

string text = "";

int num = 0;

while ((str = srReadLine()) != null)

{

num++;

if (num == i)

{

text = str;

}

}

j = num;

srClose();

return text;

}

#endregion

PHP如何从文本中提取指定行数内容?在php中,通过fopen()方法打开文件,在while中使用fgets()方法获取每行数据,每读到一行,就使用标识记录一次,通过累计记录数计算出文件的行数。下面介绍实现的过程。

方法/步骤分步阅读

1

/7

新建一个php文件,命名为handlephp,用于讲解PHP怎么获取文件的行数。

2

/7

新建一个文本文件,命名为testtxt,在里面输入四行数据,分别是aaa,bbb,ccc,ddd。

3

/7

在handlephp文件里,使用fopen方法以只读方式打开testtxt文件,代码如下:

4

/7

在handlephp文件里,创建一个初始变量i,用于保存文件内容的行数。

5

/7

通过while()语句,使用fgets方法从文件指针中读取一行,每读取一行,变量i自加一,直到到达文件末尾停止while的执行。

注:!feof($handle),函数检测是否已到达文件末尾。

6

/7

最后,使用echo输出文件的行数,并通过fclose关闭文件资源。代码如下:

7

/7

在浏览器执行handlephp文件,查看输出的行数,执行的结果为4行。

内容仅供参考并受版权保护

#include <iostream>

#include <fstream>

#include <string>

using namespace std;

int CountLines(char filename)

{

ifstream ReadFile;

int n=0;

char line[512];

string temp;

ReadFileopen(filename,ios::in);//ios::in 表示以只读的方式读取文件

if(ReadFilefail())//文件打开失败:返回0

{

return 0;

}

else//文件存在

{

while(getline(ReadFile,temp))

{

n++;

}

return n;

}

ReadFileclose();

}

void main()

{

cout<<"comntxt的行数为: "<<CountLines("comntxt")<<endl;

cinget();

}

@echo off

for /f %%a in ('type %1') do set /a v+=1

echo 执行的是 %1

echo 该文件有 %v% 行字符!

pause

直接把文件拖到该批处理图标上就行了,结果就会显示出来的,

不用先运行该批处理,在把文件拖到命令窗口中去,在按 回车那么麻烦。

以上就是关于点击HMTL页面中的表格td里面的文本框,怎么得到当前点击的行数和列数用JavaScript实现。全部的内容,包括:点击HMTL页面中的表格td里面的文本框,怎么得到当前点击的行数和列数用JavaScript实现。、C# textbox怎样获取里面文本有多少行、c#如何按行来读取文本文件,并显示文本的行数等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9522243.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-29
下一篇2023-04-29

发表评论

登录后才能评论

评论列表(0条)

    保存