我在一个页面上有一个下拉列表,我想使用AJAX从XML文件中填充它。有没有办法告诉AJAX只运行某些asp.net方法而不使用WebServices?
任何其他解决方案都是受欢迎的,但唯一的限制是它将在服务器端进行(而不是以js为例) ?
谢谢!
答案 0 :(得分:0)
这可以通过各种方式实现 - 一种方法是在客户端使用jQuery来生成类似的AJAX请求(绑定到此处准备的页面,但它可以绑定到SELECT更改事件):
$(document).ready( function () {
$.get('/target-url.aspx?someparam=somevalue', function(data) {
// process the returned data - dependant on the format - assuming JSON here.
var items = data['items'];
// may wish to clear the contents of the SELECT box.
// spin through and add OPTION elements
for(var i = 0; i < items.length; i++) {
$('#selectid').append('<option>'+items[i]+'</option>');
}
}
}
其中selectid是dropdownlist元素的ID(如果在ASP.NET中使用ClientId)。
然后,您需要在ASP.NET中编写一些代码,以使用您所需的逻辑响应AJAX请求。
一些有用的链接:
http://api.jquery.com/jQuery.get/
请参阅此处,了解使用jQuery和ASP.NET的示例:
http://encosia.com/use-jquery-and-aspnet-ajax-to-build-a-client-side-repeater/