-2

我正在使用如下的字符串生成器...

 protected void Page_Load(object sender, EventArgs e)
 {       
    System.Text.StringBuilder sb = new System.Text.StringBuilder(); 
    sb.Append("<script language='javascript'>function Open() {"); 
    sb.Append(string.Format("window.open('Chat.aspx?rid={0}'",lstRooms.SelectedValue));
    sb.Append(, 'newwindow','toolbar=no,location=no,menubar=no,width=290,height=330,resizable=no,scrollbars=no,top=350,left=980,right=500'");return false;"); 
    sb.Append("}</script>"); 

    if (!ClientScript.IsClientScriptBlockRegistered("JSScriptBlock")) 
    {
        ClientScript.RegisterClientScriptBlock(this.GetType(), "JSScriptBlock", sb.ToString()); 
    }

    if (!ClientScript.IsClientScriptBlockRegistered("JSScriptBlock")) 
    {
        ClientScript.RegisterClientScriptBlock(this.GetType(), "JSScriptBlock", sb.ToString()); 
    }

    lblFacultyNo.Text = Session["User_Id"].ToString();
    lblUserType.Text = Session["User_Type"].ToString();

    pnlChat.Visible = false;        
}

现在我在这一行出现错误....

 sb.Append(, 'newwindow','toolbar=no,location=no,menubar=no,width=290,height=330,resizable=no,scrollbars=no,top=350,left=980,right=500'");return false;"); 

对于哪个错误我得到了这个错误请帮助我快速解决它......谢谢

4

5 回答 5

3

您需要为字符串使用引号,"而不是撇号'

于 2012-05-01T07:05:05.963 回答
1

问题是你使用 ' 作为字符串文字,而你应该使用 ". ' 来表示字符。

于 2012-05-01T07:06:02.990 回答
0

如果你想在前面放一个双引号return false,你需要转义它-注意我添加的反斜杠

sb.Append(",newwindow','toolbar=no,location=no,menubar=no,width=290,height=330,resizable=no,scrollbars=no,top=350,left=980,right=500'\");return false;");

但是它看起来并不平衡 - 我没有看到匹配的双引号。

于 2012-05-01T07:05:40.337 回答
0

你在第 4 行的开头缺少 "

于 2012-05-01T07:05:45.710 回答
0

语法着色应该在这里指导您。您的字符串格式错误:

//sb.Append(,'newwindow','toolbar=no,location=no,menubar=no,width=290,height=330,resizable=no,scrollbars=no,top=350,left=980,right=500'");return false;");     
sb.Append(", 'newwindow','toolbar=no,location=no,menubar=no,width=290,height=330,resizable=no,scrollbars=no,top=350,left=980,right=500'\");return false;"); 

最后是

 right=500'\");return false;"); 

或者

right=500');return false;"); 
于 2012-05-01T07:06:15.183 回答