Javascript 检查JValue字符串在AngularJS中是否有值
我正在对li元素执行ng if,以检查是否显示它Javascript 检查JValue字符串在AngularJS中是否有值,javascript,c#,angularjs,asp.net-mvc,razor,Javascript,C#,Angularjs,Asp.net Mvc,Razor,我正在对li元素执行ng if,以检查是否显示它 <li ng-if="@Model.punkt1.ToString().Length > 0">@Model.punkt1</li> 但是当我运行页面时,出现了以下错误: Microsoft.CSharp.RuntimeBinder.RuntimeBinderException: Cannot perform runtime binding on a null reference at CallSite.Ta
<li ng-if="@Model.punkt1.ToString().Length > 0">@Model.punkt1</li>
但是当我运行页面时,出现了以下错误:
Microsoft.CSharp.RuntimeBinder.RuntimeBinderException: Cannot perform runtime binding on a null reference
at CallSite.Target(Closure , CallSite , Object )
at System.Dynamic.UpdateDelegates.UpdateAndExecute1[T0,TRet](CallSite site, T0 arg0)
at ASP._Page_app_plugins_mygrideditor_infobox_cshtml.Execute() in c:\Users\thomb\Documents\Visual Studio 2017\Projects\LoevbjergRema1000Umbraco\LoevbjergRema1000Umbraco\LoevbjergRema1000Umbraco\App_Plugins\MyGridEditor\infobox.cshtml:line 8
at System.Web.WebPages.WebPageBase.ExecutePageHierarchy()
at System.Web.Mvc.WebViewPage.ExecutePageHierarchy()
at System.Web.WebPages.WebPageBase.ExecutePageHierarchy(WebPageContext pageContext, TextWriter writer, WebPageRenderingBase startPage)
at System.Web.Mvc.RazorView.RenderView(ViewContext viewContext, TextWriter writer, Object instance)
at System.Web.Mvc.BuildManagerCompiledView.Render(ViewContext viewContext, TextWriter writer)
at Umbraco.Core.Profiling.ProfilingView.Render(ViewContext viewContext, TextWriter writer)
at System.Web.Mvc.HtmlHelper.RenderPartialInternal(String partialViewName, ViewDataDictionary viewData, Object model, TextWriter writer, ViewEngineCollection viewEngineCollection)
at System.Web.Mvc.Html.PartialExtensions.Partial(HtmlHelper htmlHelper, String partialViewName, Object model, ViewDataDictionary viewData)
at System.Web.Mvc.Html.PartialExtensions.Partial(HtmlHelper htmlHelper, String partialViewName, Object model)
at ASP._Page_Views_Partials_grid_editors_base_cshtml.Execute() in c:\Users\thomb\Documents\Visual Studio 2017\Projects\LoevbjergRema1000Umbraco\LoevbjergRema1000Umbraco\LoevbjergRema1000Umbraco\Views\Partials\Grid\Editors\Base.cshtml:line 19
为什么我不能检查我的绳子的长度
编辑:
在将值转换为
字符串之前检查空条件代码>
试试这个
<li ng-if="@Model.punkt1 != NULL && @Model.punkt1.ToString().Length > 0">@Model.punkt1</li>
@Model.punkt1
有关详细信息:
请选择ng show
,而不是ng if
。您可以看到不同之处:
编辑:
不能使用Convert.Tostring()代码>因为您正在尝试获取字符串的长度。因此,如果值为null,则会抛出相同的错误。有关详细信息,请参阅此链接。因此,在获取我上面提到的值的length
之前,您应该检查null
条件 在将值转换为字符串之前检查空条件代码>
试试这个
<li ng-if="@Model.punkt1 != NULL && @Model.punkt1.ToString().Length > 0">@Model.punkt1</li>
@Model.punkt1
有关详细信息:
请选择ng show
,而不是ng if
。您可以看到不同之处:
编辑:
不能使用Convert.Tostring()代码>因为您正在尝试获取字符串的长度。因此,如果值为null,则会抛出相同的错误。有关详细信息,请参阅此链接。因此,在获取我上面提到的值的length
之前,您应该检查null
条件 可能是so的重复,您在模型中得到了一个javscript变量名?我得到了一个JSON响应,该响应具有以下属性:,其中“value”是我的“punkt1”变量。据我所知,punkt1
的数据类型是什么,它是JValue数据类型。可能是so的重复,你在模型中得到了一个javscript变量名?我得到了一个JSON响应,它有以下属性:,其中“value”是我的“punkt1”变量。据我所知,punkt1
的数据类型是什么,它是一个JValue数据类型。我现在得到了一个不同的错误。我已将其作为一个编辑包含在内。我尝试了你链接的解决方案,但未找到“Convert”的引用。我将尝试改用ng show。谢谢,我用当前代码进行了编辑,但仍然收到空引用错误。我现在收到另一个错误。我已将其作为编辑包含。我尝试了您链接的解决方案,但未找到“转换”的引用。我将尝试改用ng show。谢谢,我已经用我当前的代码进行了编辑,但仍然得到一个空引用错误。
angular.module("umbraco").controller("my.custom.grideditorcontroller", function ($scope) {
$scope.control.heading;
$scope.control.punkt1 = "";
$scope.control.punkt2 = "";
$scope.control.punkt3 = "";
$scope.control.punkt4 = "";
$scope.control.punkt5 = "";
});
<li ng-if="@Model.punkt1 != NULL && @Model.punkt1.ToString().Length > 0">@Model.punkt1</li>