在KendoGrid,ASP.NET MVC中没有定义函数参数

时间:2014-08-07 08:53:59

标签: javascript jquery asp.net-mvc kendo-asp.net-mvc

如果有人可以就我的问题提出建议,我会很感激。

.cshtml视图中,我有:

<a class="k-button accountSearch"></a>

<div class="accountsWindow" hidden="hidden">
   <div class="accountsGrid">
       @Html.Partial("AccountsGrid", context.CustomerAccounts)
   </div>
</div>
<script>
       function getCustomerAccount(iban) {        
        alert(iban);       
    };
</script>

点击上面与课程k-button accountSearch的链接后,会出现KendoWindow

$(document).ready(function () {
    var accwindow = $(".accountsWindow");
        acc = $(".accountSearch")
                .on("click", function () {
                    accwindow.data("kendoWindow").open();
                });

        if (!accwindow.data("kendoWindow")) {
            accwindow.kendoWindow({               
                actions: [
                    ...
                ]
            });
        }
});

网格呈现为部分(AccountsGrid.cshtml)并显示在弹出窗口kendoWindow中:

@model IEnumerable<DAL.Model.CustomerAccount>

    @(Html.Kendo().Grid(Model)
      .Name("AccountsGrid")
      .Columns(columns =>
      {              
          columns.Bound(u => u.IBAN).Template(@<text> <a onclick="getCustomerAccount(@item.IBAN)">@item.IBAN</a> </text>).Title("IBAN").HtmlAttributes(new { style = "width:150px" });
      })
    .Pageable()  
    )

我希望通过函数@item.IBAN传递模型值getCustomerAccount(@item.IBAN)。调用函数时会发生错误,它说:

   US11223344 is not defined

其中US11223344@item.IBAN值并且是正确的,但为什么会出错?我也没有看到警报。

1 个答案:

答案 0 :(得分:0)

IBAN是字符串值,因此您必须添加&#39;&#39;

<a onclick="getCustomerAccount('@item.IBAN')">@item.IBAN</a>