gpt4 book ai didi

asp.net - 如何在 ASP.net 母版页中使用 jQuery AJAX?

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

我有一个带有母版页的 ASP.net Web 应用程序。在我的母版页的菜单栏中,有一个搜索功能,用户可以在其中输入查询并单击按钮。单击该按钮后,用户的浏览器将导航到显示搜索结果的页面。这个功能非常有用。

但是,我决定使用 jQuery AJAX 和 jQuery Autocomplete 来使程序更易于使用。从 http://example.com/page1.aspx 开始搜索工作正常和 http://example.com/page2.aspx ,但从 http://example.com/subdirectory/index.aspx 开始不起作用.

这是我执行自动完成的 JavaScript 代码:(来自母版页)

function setupSerialNumberAutocomplete(id) {
$(id).autocomplete({
source: function(request, response) {
$.ajax({
url: "DeviceSelection.aspx/getDeviceFieldAutocomplete",
data: "{ 'text': '" + escape(request.term) + "', 'field': 'SerialNumber' }",
dataType: "json",
type: "POST",
contentType: "application/json",
dataFilter: function(data) { return data; },
success: function(data) {
response($.map(data.d, function(item) {
return {
value: item
}
}))
},
error: function(xhr, status) {
var exception = eval("(" + xhr.responseText + ")");
$("#divStatus").html("Error fetching registration codes list: " + xhr.statusText + " - " + exception.Message + ".");
}
}); //end - ajax
},
minLength: 2,
focus: function(event, ui) {
$(id).val(ui.item.value);
return false;
},
select: function(event, ui) {
$(id).val(ui.item.value);
return false;
}
});

这是对 DeviceSelection.aspx/getDeviceFieldAutocomplete 的 jQuery AJAX 调用,这是我的 ASP.net 代码中的 Web 服务调用。 DeviceSelection.aspx 位于http://example.com/DeviceSelection.aspx ,所以我认为问题是当用户访问 http://example.com/subdirectory/index.aspx 时并输入查询,它会尝试调用 http://example.com/subdirectory/DeviceSelection.aspx 处的 Web 服务.

我怎样才能做到这一点?

最佳答案

将其更改为:

...
$.ajax({
url: "/DeviceSelection.aspx/getDeviceFieldAutocomplete",
data: "{ 'text': '" + escape(request.term) + "', 'field': 'SerialNumber' }",
dataType: "json",
...

前面的“/”表示该URL是相对于域名的(而不是相对于当前页面的)。

关于asp.net - 如何在 ASP.net 母版页中使用 jQuery AJAX?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4455463/

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