我的.aspx页面中存在问题,我将布尔变量(C#)传递给期望布尔类型的javascript函数.
BUt C#变量返回True,而javascript不喜欢大写.
myjavascript( <%= MyBooleanVariableInCSharp %> );
Run Code Online (Sandbox Code Playgroud)
如果我将c#变量转换为字符串,那么我的javascript变量变为字符串而不是js bool值!
这场噩梦的解决方案是什么?大声笑
And*_*are 95
试试这个:
myjavascript( <%= MyBooleanVariableInCSharp.ToString().ToLower() %> );
Run Code Online (Sandbox Code Playgroud)
men*_*del 20
如果你需要经常这样做,只需将它添加到javascript(或你的js库文件等)的顶部
var True = true, False = false;
Run Code Online (Sandbox Code Playgroud)
然后你编码
myjavascript( <%= MyBooleanVariableInCSharp %> );
Run Code Online (Sandbox Code Playgroud)
会工作得很好.
如果出于任何原因你不想使用变量的另一个选择是编写你的javascript调用,如下所示:
myjavascript( '<%= MyBooleanVariableInCSharp %>'=='True' );
Run Code Online (Sandbox Code Playgroud)
你也可以这样做.
myjavascript(<%=myBooleanVariableInCSharp ? "true" : "false" %>);
Run Code Online (Sandbox Code Playgroud)
其他答案针对旧版本,在Razor 之前,
如果您使用Razor,那么这就是解决方案
myjavascript( @MyBooleanVariableInCSharp.ToString().ToLower() );
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
36372 次 |
| 最近记录: |