1

我创建了一个 Html 助手,用于搜索用户使用 Razor 助手内联提供的文本。我写的代码如下;

<script type="text/javascript">
    $('#companyName').change(function () {
        var searchTerm = $(this).val();
        @Search(searchTerm);
    });
</script>

<p>Search For:</p>
@Html.TextBox("companyName", Model)

@helper Search(string searchTerm)
 {
    if (searchTerm !="" || searchTerm != null)
    {
        @searchTerm;
    }
    else
    {
        @searchTerm.Substring(0, 7)<text>...</text>
    }
    }

在这里,我想将文本框的值传递给 searchTerm。我怎样才能做到这一点..?

4

1 回答 1

1

Razor 助手在服务器上执行。在您的情况下,您正在订阅客户端上的.change()事件textbox。因此,您需要编写客户端 javascript 处理程序,而不是 Razor 助手:

<script type="text/javascript">
    $('#companyName').change(function () {
        var searchTerm = $(this).val();
        Search(searchTerm);
    });

    function Search(searchTerm) {
        // do the search here
    }
</script>

<p>Search For:</p>
@Html.TextBox("companyName", Model)
于 2012-07-04T07:41:16.530 回答