【问题标题】:ASPX convert string to booleanASPX 将字符串转换为布尔值
【发布时间】:2021-04-22 00:55:03
【问题描述】:

我必须支持一些 aspx 页面,而且我对 apsx 还是很陌生。在下面的情况下 allWOs = "false",并最终被传递给一个需要布尔值的方法。如何需要将字符串转换为布尔值?下面提出了一种可行的方法吗?

代码:

var allWOs = "<%= allWorkOrders %>";
BillingWork.MovePeriod(allWOs, MovePeriod_Callback);

错误:

Unable to cast object of type 'AjaxPro.JavaScriptString' to type 'AjaxPro.JavaScriptBoolean'.

建议:

 var allWOs = $("#<%= allWorkOrders %>").val() != null ? $("#<%= allWorkOrders %>").prop('checked') : false;

【问题讨论】:

  • 如果allWorkOrders 是一个控件,那么可能是allWorkOrders.ClientID
  • BillingWork.MovePeriod(allWOs == 'true', MovePeriod_Callback);怎么样

标签: asp.net ajaxpro


【解决方案1】:

在使用var

var allWOs = "...";

编译器将 string 确定为类型。因此,要将布尔值传递给您需要 convert string to boolean 的方法,例如

bool allWOs = System.Convert.ToBoolean("<%= allWorkOrders %>");

如果除该方法外未在任何地方使用 allWos,并且不需要对 allWorkOrders 进行额外验证,那么最简单的方法是使用上面建议的“true”或“false”测试相等性。

BillingWork.MovePeriod(allWOs == "true", MovePeriod_Callback);

【讨论】:

    猜你喜欢
    • 2018-09-07
    • 1970-01-01
    • 2012-03-10
    • 2012-12-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多