gpt4 book ai didi

jquery - 将多个参数传递给自动完成返回方法

转载 作者:行者123 更新时间:2023-12-01 03:47:50 24 4
gpt4 key购买 nike

我需要一些帮助。我在 MVC3 中使用 Razor View 。我有一个带有自动完成功能的搜索栏,运行良好。现在根据要求。我需要在搜索文本框旁边创建一个单选按钮,并根据所选的单选按钮值,我需要从不同的表中获取自动完成文本。这是因为,我的索引页面 View 有 3 个不同的 webgrid 列表。因此,搜索应该根据用户想要搜索的内容,通过将参数中的选项指定为单选按钮来进行操作。

我这里有我的常规 jQuery 代码:

$(document).ready(function () {
$(":input[data-autocomplete]").each(function () {
$(this).autocomplete({ source: $(this).attr("data-autocomplete") });
})
})*

我修改了上面的内容以传递第二个参数:-

$(document).ready(function () {

var radioval = $("#form0").find("input[type=radio]").attr("value");
$(":input[data-autocomplete]").each(function (request) {
var srctxt = $(this).attr("value");
$(this).autocomplete({
source: "/Facility/FindNames/?term = " + $(this).attr("value") + "&stype = " + radioval
});
})
})

我的目的是传递第二个参数搜索类型,它是一个单选按钮组,然后在下面的 Controller 中根据传递的值更改查询以从不同的表中进行选择。

-- Controller 方法

 public JsonResult FindNames(string term, string stype)
{

string radioValue = null;

var result = _service.GetAllFacility()
.Where(r => r.FacilityName.Contains(term))
.Take(10)
.Select(r => new { label = r.FacilityName });

return Json(result, JsonRequestBehavior.AllowGet);
}

但是 stype 的值始终为 null。使用 firebug 我可以看到它确实有值(value)。有人可以告诉我我的代码有什么问题吗?实现这种搜索功能的最佳方法是什么?

最佳答案

您可以按如下方式处理 函数以传递多个参数

var radioval = $("#form0").find("input[type=radio]").attr("value");
$(":input[data-autocomplete]").each(function() {

$this = $(this);
var srctxt = $this.val();
$this.autocomplete({
source: function (request, response) {
$.getJSON('/Facility/FindNames/',
{
stype: radioval,
term: srctxt
}, response);
}
});
})

关于jquery - 将多个参数传递给自动完成返回方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11531261/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com