变量调用实现的问题
请看我的.aspx代码
protected void Page_Load(object sender, EventArgs e)
{
//省略
string strid = ""+ dr["classid"].ToString() +"";
//省略
}
public string Class()
{
//省略
while (dr.Read())
{
if (dr["classid"].ToString() == "{strid}")
{
strBody += "<option value=" + dr["classid"] + " selected='selected'>" + dr["classname"] + "</option>";
}
else {
strBody += "<option value=" + dr["classid"] + ">" + dr["classname"] + "</option>";
}
}
//省略
}
我的意思是,当classid和当前的classid是一样的话,就用上面
strBody += "<option value=" + dr["classid"] + " selected='selected'>" + dr["classname"] + "</option>";
这句话,就是处于被选中状态,请问我上面的if (dr["classid"].ToString() == "+strid+"),正确的写法是?谢谢
------解决方案--------------------if (dr["classid"].ToString() == strid)
------解决方案--------------------if(dr["classid"].ToString().Equals(strid))
{
}
OK?
------解决方案--------------------
不要在Page_Load方法中声明strid,这样它的可访问域就仅限于该方法内。在页面class一级来声明,然后在Page_Load方法中对其赋值。
C# code
public partial class...
{
string strid = "";
protected void Page_Load(object sender, EventArgs e)
{
strid = dr["classid"].ToString();
}
}