我如何在Javascript中使用模型?

时间:2013-03-24 12:27:00

标签: c# javascript asp.net-mvc razor

示例:

<script type="text/javascript">
        function abc() {
            var t = document.getElementById("name").value;
            @foreach(Player pl in Model){
            if (t == pl.Name) {
                alert("This name is already use!");
            }                
        }
    </script>

错误:t - 无法解析符号 如何在C#代码中使用JavaScript变量?在这个例子中是否可能?

2 个答案:

答案 0 :(得分:2)

您不能在C#代码中使用JS变量,但可以在代码中使用C#变量。 在大多数情况下,C#用于呈现HTML或JS。

在您的情况下,最好将C#服务器端模型渲染为JS数组,以后可以迭代。

  1. 执行returns your list (assuming it's a list) as a JSON

  2. 的操作
  3. fetch the data with an AJAX get call to your action.

  4. 干杯!

答案 1 :(得分:0)

你可以这样做。

<script type="text/javascript">
    function abc(players) {
        var t = document.getElementById("name").value;
        for(p in players) {
        if (t == p.Name) {
            alert("This name is already use!");
        }                
    }

    abc(@Html.Raw(Json.Encode( Model )));
</script>