string rl; public void Page_Load(object sender,EventArgs e)
{ StreamReader sr = File.OpenText(Server.MapPath("article/vc.txt")); rl = sr.ReadLine;
sr.Close();
}
public string hh()
{ return(rl);
} 我第一次在本论坛发帖,求各位程序员高人们指点!
我这个程序的作用是:
(1)首先定义一个字符串 rl ,
(2)然后在page_load事件函数中给rl 赋予一段从外面读取文本的值,就是rl等于文本内容
(3)定义公共字符串hh,在里面返回rl
这个公用字符串hh,是用来在前台页面中的javascript代码中接收的,那部分已经测试成功,即前台JS代码
用<%=hh()%>接收hh中的字符,然后用这个字符创建textNode,并赋予html元素。总的功能就是读取文本并嵌入html元素。其余的部分都是对的,但问题就在aspx.cs中得到上面这段代码中,明眼人都看出来了,在page_load函数中赋予rl=sr.ReadLine() 的值,在函数外面不起作用,函数以外rl未赋值,所以hh中的rl相当于为空,这就是我现在的矛盾,怎么把page_load中赋好值的rl变量 导出或者使他怎么传递到外面,以便使hh中的rl是等于文本的? 怎样修改程序,搭个桥接个线···asp.net求助
{ StreamReader sr = File.OpenText(Server.MapPath("article/vc.txt")); rl = sr.ReadLine;
sr.Close();
}
public string hh()
{ return(rl);
} 我第一次在本论坛发帖,求各位程序员高人们指点!
我这个程序的作用是:
(1)首先定义一个字符串 rl ,
(2)然后在page_load事件函数中给rl 赋予一段从外面读取文本的值,就是rl等于文本内容
(3)定义公共字符串hh,在里面返回rl
这个公用字符串hh,是用来在前台页面中的javascript代码中接收的,那部分已经测试成功,即前台JS代码
用<%=hh()%>接收hh中的字符,然后用这个字符创建textNode,并赋予html元素。总的功能就是读取文本并嵌入html元素。其余的部分都是对的,但问题就在aspx.cs中得到上面这段代码中,明眼人都看出来了,在page_load函数中赋予rl=sr.ReadLine() 的值,在函数外面不起作用,函数以外rl未赋值,所以hh中的rl相当于为空,这就是我现在的矛盾,怎么把page_load中赋好值的rl变量 导出或者使他怎么传递到外面,以便使hh中的rl是等于文本的? 怎样修改程序,搭个桥接个线···asp.net求助
解决方案 »
- 自贺获得DEV-WOW 2009微软开发者大赛开发奖
- 连接 SQL Server 2000 问题
- 用DataGrid时碰到的,进来看下
- Asp里我要在页面里重复内容,只要<%for i=0 to 8%>内容<%next%>,这样就可以,asp.net里如何实现类似功能,很难啊
- bit类型的字段怎样插入数据?
- 表单验证问题
- 如何才能取到指定Access数据库中所有的数据表的名称及表的字段名称,字段定义?
- DATAGRID,某一个绑定的列,如何控制里面字段的内容。。。自动换行???急!!!!!!!!
- 这个问题怎么解决,请指教
- 怎麼知道一行文字中,哪個字符是回車符?
- 网页与客户端软件交互问题
- asp.net 做了URLRewriter重写URL 页面缓存就失效了呢
http://www.cnblogs.com/insus/articles/2036271.html
{
if(!IsPostBack)
{
StreamReader sr = File.OpenText(Server.MapPath("article/vc.txt")); rl = sr.ReadLine;
sr.Close();
}
}
假如还是沿用我原来的思路,也就是我们不管外面的js代码,只探讨一下在这一段后台代码中
怎么让page_load中赋值好的rl ,能在这个page_load函数以外起作用?有没有什么代码可以做到这个
StreamReader sr = File.OpenText(Server.MapPath("article/vc.txt"));
this.Literal1.Text = "jsVariable=\"" + sr.ReadLine+ "\";";
前台: 9 <script language="javascript" type="text/javascript">
10 <!--
11 //宣告一个变量,方便调用
12 var jsVariable ;
13 //在Javascript使用WebControl Literal 可以调用aspx.cs需要的值。
14 <asp:Literal id="Literal1" runat="server" />
15 //下面是调用变量。当然你的处理代码不是简单的如下只抛出信息而已。
16 alert(jsVariable);
17
18 // -->
19 </script>
懂了?
这句完全是蛋疼, 直接把string rl 设置为 public就行了,现在代码简化如下了 public string rl; public void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{ StreamReader sr = File.OpenText(Server.MapPath("article/vc.txt")); rl = sr.ReadLine(); sr.Close();
} }
public string url
{
get
{
object o = ViewState["url"];
return o == null ? string.Empty : o.ToString();
}
set
{
ViewState["url"] = value;
}
}
public void Page_Load(object sender,EventArgs e)
{
url="123123123";
}
一开始就设置rl为 public,最后就可以在页面前台中引用赋值后的rl了,而且也读出了文本。但是一个新问题是只能用ReadLine()方法读出一行,如果换成用ReadToEnd()读出全部文本,就不行读不出来。所以我只有再试试t101lian和insus 说的那种<asp:Literal >技术····