作者:mobiledu2502860957 | 来源:互联网 | 2023-10-16 15:35
Text=<%# Eval(TextBox1.Text) %>&cOndition=<%=ViewState["condition"]==null?"":Discuz.Common.Utils.HtmlEncode(ViewState["condition"].ToString().Replace("'","~^").Replace("%","~$"))%>';">点击查看问题
值不能为 null。
参数名: expression
说明: 执行当前 Web 请求期间,出现未经处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.ArgumentNullException: 值不能为 null。
参数名: expression
16 个解决方案
这一行有太多的变量,总之有一个为null
是不是ViewState["condition"],当然也许是别的
把URL里 除最外层双引号外,把里面的双引号全改为单引号
你这样写代码自己都难检查,最好你在.cs文件先把要链接内容或网址处理好,放到一个变量里,用变量绑定到html代码,这样错在哪里你都好检查
要用Text=<%# Eval(TextBox1.Text)是吧?
不如这样:Text=<%= TextBox1.Text %>
把onclick方法写到一个function里面去
var con="<%=ViewState["condition"] %>";
var text = document.getElementById('TextBox1').value;
这样去获取自己要的值,然后拼接好再window.location.href ='oa_NoReply.aspx?Text='+text+'&cOndition=<%=ViewState["condition"]==null?"":"123"%>' ;
window.location.href ='oa_NoReply.aspx?Text='+<%= TextBox1.Text %>+'&cOndition='+<%=VizheewState["condition"]==null?"":"123"%>