2016-08-19 37 views
0

我在Asp.Net中有一個局部視圖,該視圖中有一個表格。的ID到該表被設置爲它已通過例如「錯誤」,「警告」或「有效」,用將變量傳遞給函數時發生錯誤javascript不允許更改CSS

設置validity「類=‘@ validity.ToString()’」

我用一個按鈕來調用該函數:

<button onclick=collapse(@validity.ToString())">Collapse</button> 

Script是

@section scripts 
{ 
    <script type="text/javascript" language="javascript"> 
     var x = false; 
     function collapse(cls) { 
      x = !x; 
      var add = '.'; 
      var Class = add.concat(cls); 
      if(x) 
       $(Class) 
        .css({ 
         'display': 'none' 
        }); 
      else { 
       $(Class) 
        .css({ 
         'display': 'table-row' 
        }); 
      } 
     }; 
    </script> 
} 

不知道爲什麼,這是不允許的Class設置該表的CSS改變

+0

控制檯中的任何錯誤?你有沒有嘗試添加斷點和調試?可能是選擇器需要用引號括起來,'$(「Class」)' – Morpheus

+0

typo:onclick = collapse()「=> onclick =」collapse()「 –

回答

0

如果validity是一個字符串,或者將其轉換爲字符串,則需要用引號將其傳遞給Javascript函數。你可以這麼做,或者安裝Json.Net並執行此操作:

<button onclick=collapse(@(Html.Raw(JsonConvert.SerializeObject(validity))))">Collapse</button> 
相關問題