2012-03-01 51 views
0

我正在開發一個MVC3剃鬚刀的網站,我想發送一個javascript變量作爲參數,但我不知道這是否是可行的。代碼是這樣的:Javascript var作爲參數在c#mvc3 razor

function clean(caja) { 
    @{ 
     Inicio.Controllers.kitClass kit = new Inicio.Controllers.kitClass(caja); 
     kit.clean(); 
    } 
} 

感謝您的幫助。

+0

我已經更新了我的例子顯示,你可以做到這一點使用封裝方法。 – anAgent 2012-03-02 17:42:29

回答

3

不,它不是。你將不得不打一個阿賈克斯電話。

+0

謝謝。最後我做了一個ajax調用,並且很輕鬆地工作。 – ferpinan 2012-03-20 11:04:41

1

如果你想剃刀VAR傳遞給一個函數,你可以這樣做:

@{ 
    var someItem = "Hello! Welcome to MVC"; 
} 
<script type="text/javascript"> 
    $(document).ready(function() { 
     alert(@someItem); 
    }); 
</script> 

我想你可能會考慮這樣的事情作爲一種替代方案:

@ {

var kit = new Test.Controllers.kitClass("something"); 
Func<bool,bool> Incio = delegate(bool cleanMe) { return kit.clean(); }; 

}

<script type="text/javascript"> 
    $(document).ready(function() { 
     executeTheFunc(); 
    }); 
    function executeTheFunc() { 
     if('@Incio(true)' == 'True'){ 
      alert("This is clean!"); 
     } else { 
      alert("This is not clean!"); 
     } 
    } 
</script> 

模擬類 - 不知道你是什麼樣子:

public class kitClass { 
    public kitClass(string something) { 

    } 
    public bool clean() { return true; } 
} 
+0

這是另一回合。他希望將一個JavaScript變量發送給.NET實例方法。 – Umair 2012-03-01 15:36:47

+0

我更新了示例以顯示您可以做到這一點。 – anAgent 2012-03-08 21:22:29