MVC TextBoxFor选定的值

时间:2017-03-31 09:25:19

标签: jquery asp.net-mvc entity-framework

我不使用DropDownListFor,没有DropDownListFor .. 我想使用TextBoxFor,因为我的TextBoxFor包含自动数据, 在我的数据库中保存TextBoxFor值为零..如何获取选定的值并保存我的数据库值...以获得帮助谢谢  代码:

@Html.TextBoxFor(model=>model.Fakulteler,new {@type="text",@class="form-control",id= "FakultelerId"})

JavaScript的:

<script type="text/javascript">
    $(document).ready(function () {
        $("#FakultelerId").autocomplete({
            source: '@Url.Action("Search","Fakulte")'
        });
    });
</script>

代码:

public List<string> Search(string name)
{
    KutuphaneContext db = new DataContext.KutuphaneContext();
    return db.Fakulte.Where(x => x.FakulteAdi.Contains(name)).Select(x => x.FakulteAdi).ToList();
}

public ActionResult Search(string term)
{
    Fakulte fak = new Models.Fakulte();
    return Json(fak.Search(term), JsonRequestBehavior.AllowGet);
}

1 个答案:

答案 0 :(得分:0)

使用自动填充更改事件保存所选数据:

<script type="text/javascript">
    $(document).ready(function () {
        $("#FakultelerId").autocomplete({
            source: '@Url.Action("Search","Fakulte")',
            change: function( event, ui ) {
                if (ui.item !== null) {
                    $.ajax({
                        url: '/Search/SaveData',
                        type: 'POST',
                        data: { Value: ui.item.value },
                        success: function (data) {
                            // do something after saving
                        }
                    });
                }
            }
        });
    });
</script>

你将拥有自己的方法:

[HttpPost]
public IActionResult SaveData(string Value)
{
    // Do something with data
    return Json(true);
}

仅当所选值已更改时,才会触发change事件。