2017-03-07 49 views
-3

我有简单的脚本来显示HTML字段中使用Javascript的字符串的长度。我使用的长度功能不能正常工作。但我无法理清解决方案。请指教。长度函数C#不工作

@foreach (var val in ViewData["Students"] as List<Students>) 
    { 
     var state = @val.state; // its working fine 
     if ((@state.length == 7)) // its not working length function fails 
      { 
      <p> I am : @state : with length : @state.length</p> 
      } 
    } 
+0

为什么你需要的'@''后VAR状态...'? 'if((state.length == 7))'不起作用吗? – Nope

+0

它没有任何工作 –

+0

什么是错误,'console.log(state)'和'console.log(@state)'在调试器控制台中显示了什么? – Nope

回答

1

您使用Razor在C#中编程,这不是JavaScript问题。

如果state是一个集合,请尝试使用属性.Count代替:

@foreach (var val in ViewData["Students"] as List<Students>) 
{ 
     var state = @val.state; // its working fine 
     if ((@state.Count == 7)) // its not working length function fails 
     { 
      <p> I am : @state : with length : @state.Count</p> 
     } 
    } 
+0

不,情况并非如此。状态只有一个来自集合的价值。它是一个foreach循环。另外,我正在做HTML + JS的前端。 C#是后端,这不是这种情况下的要点。谢谢 –

+1

@BaseerUlHassan那么为什么你的问题Razer的代码不是JavaScript? – evolutionxbox

+2

@BaseerUlHassan请花5分钟时间了解您使用的技术https://www.w3schools.com/asp/razor_syntax.asp http://www.tutorialsteacher.com/mvc/viewdata-in-asp.net- mvc – bviale