Jquery自动完成将选定的值传递给控制器​​

Jquery自动完成将选定的值传递给控制器​​

问题描述:

关于这一点,我看到一条线程,遗憾的是我忘记将它标记为最喜欢的,现在我找不到它,我已经将jQuery自动完成连接到我的页面。Jquery自动完成将选定的值传递给控制器​​

当我键入并选择我需要传递回控制器按提交时,选择它看起来像这样经过检查HTML当一个项目:

<div class="ui-autocomplete-multiselect ui-state-default ui-widget" style="width: 746.6px;"> 
<div class="ui-autocomplete-multiselect-item"> 
     Windsurfing 
    <span class="ui-icon ui-icon-close"></span> 
</div> 
<div class="ui-autocomplete-multiselect-item"> 
     Surfing 
    <span class="ui-icon ui-icon-close"></span> 
</div> 
    <input id="myAutocomplete" class="ui-autocomplete-input" type="text" autocomplete="off" style="width: 19px;"> 
</div> 

我需要一些如何传回帆板和冲浪,我使用的FormCollection尝试值,但似乎并没有传递回

+0

您输入不具有name属性,因此不会(使用强类型的HTML辅助使用视图模型,绑定到它和后回模型,以避免这些类型的错误在你的代码)后回到它的价值 – 2015-04-03 00:50:48

+0

@StephenMuecke听起来很有意思,我相信我最初看到的线程就是这么做的,你有没有例子?或者也许看到线程即时通讯谈论? – 2015-04-03 00:53:14

+0

[本文](http://blogs.msdn.com/b/stuartleeks/archive/2012/04/23/asp-net-mvc-amp-jquery-ui-autocomplete.aspx)可能有帮助 – 2015-04-03 00:56:18

当绑定的自动完成构件到您的输入,只需要创建一个选择事件处理程序是这样的:

$("#myAutocomplete").autocomplete({ 
    select: function(event, ui) { 
    // pass back to controller here 
    } 
}); 
+0

这不是我正在寻找的东西,我希望用户选择他/她想要什么,什么时候完成并提交了页面,然后我想引用它们,我不想每次都对控制器进行调用有人选择新的东西 – 2015-04-03 02:05:50

在选择时调用控制器可能不合适,这就像是有一种旧式的回发,而不是我认为这样做的方式。更好的方法是将选择的值设置为模型上的隐藏属性。

$("#myAutocomplete").autocomplete({ 
    select: function(event, ui) { 
    $('#yourHiddenModelField').val(ui.item.value); 
    } 
});