jquery – 将ID与自动完成中的文本绑定为值

前端之家收集整理的这篇文章主要介绍了jquery – 将ID与自动完成中的文本绑定为值前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用Kendo Autocomplete,因为我正在填写Text并使用该文本解析数据,
但我想使用ID作为值在表单提交的服务器端发送它.

我正在使用这个Kendo编辑器但是无法将“CustomerID”绑定为自动完成的值::

@(Html.Kendo().AutoComplete()
                                  .Name("Customers")
                                  .DataTextField("CustomerShortName")
                                  .Value("CustomerID")
                                  .Filter("contains")
                                  .MinLength(3)
                                  .Template("<label>${ data.CustomerShortName }</label>")
                                  .HtmlAttributes(new {  disabled="disabled" })
                                  .DataSource(source =>
                                  {
                                      source.Read(read =>
                                      {
                                          read.Action("GetCustomers","GetData");
                                      })
                                      .ServerFiltering(true);
                                  })
                            )

请尽快帮助我.

解决方法

我以另一种方式做到了这一点,
我为其ID值设置了一个隐藏类型,即“CustomerID”为
@Html.HiddenFor(x=>x.CustomerID)

并且在更改kendo自动完成时我写了一些事件,

@(Html.Kendo().AutoComplete()
                                      .Name("Customers")
                                      .DataTextField("CustomerShortName")
                                     .Events(events => events.Select("CustomerSelect"))
                                      .Filter("contains")
                                      .MinLength(3)
                                      .Template("<label>${ data.CustomerShortName }</label>")
                                      .HtmlAttributes(new {  disabled="disabled" })
                                      .DataSource(source =>
                                      {
                                          source.Read(read =>
                                          {
                                              read.Action("GetCustomers","GetData");
                                          })
                                          .ServerFiltering(true);
                                      })
                                )

为此,我使用Javascript函数::

<script>
//Set CustomerID
    function CustomerSelect(e)
    {
        var DataItem = this.dataItem(e.item.index());
        $("#CustomerID").val(DataItem.CustomerID);
}
</script>

我在提交表格时使用的这个价值.谢谢你的帮助.

猜你在找的jQuery相关文章