我需要分两行显示字符串中的前 24 个字符。我正在尝试显示一个图表来解释我想要如下字符串的方式。
--------------
|month has th|
|irthy days |
如您所见,也有空格。
我的问题是当我尝试显示字符串时,它显示如下。
--------------
|month has |
|thirty days |
我怎样才能像第一张图那样显示?
这是我尝试做的方式
for (int j = 0; j <= 12; j++)
if(temp_name[j].ToString() != Environment.NewLine)
name += temp_name[j];
name += Environment.NewLine;
for (int j = 13; j <= 24; j++)
if (temp_name[j].ToString() != Environment.NewLine)
name += temp_name[j];
我正在写前 12 个字符并换行,然后是接下来的 12 个字符
这是为什么我需要这个功能的图片。
如您所见,我的主屏幕无法正确显示项目。我放那条粗的短水平线来显示差异
这是 aspx 标记,
s += "<span class='th radius'><div id='" + ds.Tables[0].Rows[i].ItemArray[0].ToString() + "' class='div_product_id two mobile-one columns' style='cursor:pointer;'>" +
"<img src='images/galvaniz_boru.jpg'>" +
"<div class='panel'><span style='font-size:11px'>" + ds.Tables[0].Rows[i].ItemArray[2].ToString() + "<br />" + name + "</span>" +
"<p class='subheader'>" + ds.Tables[0].Rows[i].ItemArray[3].ToString() + " " + ds.Tables[0].Rows[i].ItemArray[4].ToString() + "</p></div></div></span>";
最佳答案
您没有输出 12 个字符;
for (int j = 0; j <= 12; j++)
if(temp_name[j].ToString() != Environment.NewLine)
name += temp_name[j];
name += Environment.NewLine;
这会导致名称获得前 13 个字符(因为您也在使用第 12 个索引元素)。
for (int j = 13; j <= 24; j++)
if (temp_name[j].ToString() != Environment.NewLine)
name += temp_name[j];
这确实消耗了 12 个字符,但它从错误的索引开始;循环应该是这样的:
for(int j = 12; j < 24; j++)
//etc
你也可以只使用类似的东西:
name += temp_name.Substring(0, 12); // do some checking by the way on length of temp_name!
name += "<br />";
name += temp_name.Substring(12, 12); //again, do some checking
此外,更改您的 Environment.NewLine
至 "<br />"
因为这将使用 HTML 显示。
关于c# - asp.net 不显示我在 html 中想要的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15557504/