我有一个像这样结构的文本文件......
<head> <script type="text/javascript"> function readfileautomatically(); </script> </head> <body> <body onload="readfileautomatically();"> <td id="foo"></td> <script> function readfileautomatically () { var client = new XMLHttpRequest(); client.open('GET', '/foo.txt'); client.onreadystatechange = function() { alert(client.responseText); } client.send(); } </script> </body>
我使用以下代码读取txt文件
<td="line3"> world from txt file will be here </td>
<td="line1"> hello from txt file will be here </td>
目前,通过上述内容,我可以阅读文本文件并提醒内容。我现在想扩展我的代码并执行此操作。
页面加载时读取foo.txt
从txt文件id = line3
分配第3行世界从txt文件id = line1
中分配第1行hello所以我可以这样做:
{{1}}
非常感谢任何帮助。
答案 0 :(得分:3)
如果您有任何疑问,请告诉我们。)
public ActionResult Index(int id)
{
var order_Items = db.Order_Items.Include(o => o.Item).Include(o => o.Order).Where(o => o.OrderId == id);
return View(order_Items.ToList());
}
答案 1 :(得分:1)
要将文件拆分为行,您可以尝试String#split
方法,按\n
个字符(换行符)拆分。这会给你一系列的行。
例如:
var text = client.responseText;
var lines = text.split("\n"); // create array of lines
document.getelementById("line3").innerHTML = lines[2]; // Arrays start at zero
document.getelementById("line1").innerHTML = lines[0];
答案 2 :(得分:1)
variations between newline on different systems
您必须在新行字符上拆分文本并遍历数组。注意{{3}}
function numPyramids(n){
var distinctPartitions = [1,1],
pentagonals = {},
m = _m = 1,
pentagonal_m = 2,
result = 1;
while (pentagonal_m / 2 <= n){
pentagonals[pentagonal_m] = Math.abs(_m);
m++;
_m = m % 2 == 0 ? -m / 2 : Math.ceil(m / 2);
pentagonal_m = _m * (3 * _m - 1);
}
for (var k=2; k<=n; k++){
distinctPartitions[k] = pentagonals[k] ? Math.pow(-1,pentagonals[k]) : 0;
var cs = [1,1,-1,-1],
c = 0;
for (var i in pentagonals){
if (i / 2 > k)
break;
distinctPartitions[k] += cs[c]*distinctPartitions[k - i / 2];
c = c == 3 ? 0 : c + 1;
}
result += distinctPartitions[k];
}
return result;
}
console.log(numPyramids(6)); // 13
答案 3 :(得分:1)
使用此js:
function /*<trigger load function>*/ () {
var client = new XMLHttpRequest();
client.open('GET', '//<path to file>');
client.onreadystatechange = function()
{
var txt = client.responseText.split("\n");
document.getElementById("/*<output variable, include beginning slash>*/").innerHTML = txt[<line, 0-9 style>];
/*<duplicate this line for all lines of the file you would like to read, but dont forget unique numbers>*/
}
client.send();
}
创建<? id =“ <输出变量>”>您要在其中显示行的标记。
替换为“?”标签名称为“ p”,“ txt”,“ div”,“ xmpl”,“ rgx”或“
“ xmpl”和“ rgx”不是真正的标记,它们只是首选项,但在某些MT CSS文件中具有样式。
用所示数据类型替换三角括号中包含的所有内容。这不是HTML,而是JS。
我已将代码优化为具有突出显示的修改点的纯js代码。
顺便说一句,您可以使用“&lt;”和“&gt;”重新创建三角括号和“&amp;”一开始是&符。此代码是一个&符号,后跟文本(区分大小写)以重新创建特殊字符。完整列表可用[此处] [3]。
*一些链接指向即将发布的页面。
*某些链接会导致该帖子的创建者创建一个网站(您知道吗?)。
答案 4 :(得分:0)
尝试使用参数.split()
RegExp
调用/\b/
,使用for
循环迭代生成的数组,如果数组的索引为{{1,则创建td
元素} {} 0
,"Hello"
:2
"world"
jsfiddle http://jsfiddle.net/pvd0q36x/