2011-04-05 81 views
1

我想在传统ASP表单中返回分页搜索结果时消除回传。我想我会使用JQuery按照条件创建一个ASP页面,并从服务器返回结果以显示在表格中。通过JQuery Ajax和经典ASP返回搜索结果

我应该在这里使用JSON吗?什么是最有效的方式来返回数据,所以它是表格形式?选项是我想在从SQL返回的数据上添加标签,或者让SQL添加表示元素。

回答

1

,你查询数据库,并写上你需要渲染的表中的所有HTML,然后你可以写一些jQuery来代替表如下你可以写一个ASP文件:

var LastSearchCriteria = ''; 

function getMyQuery(){ 
    if (LastSearchCriteria != $.trim($("#txtSearchCriteria").val) 
    { 
    $.ajax({ 
     type:"POST", 
     url: "MyQueryToDataBase.asp", 
     dataType: "application/x-www-form-urlencoded", 
     data: "Action=DoSearch&SearchCriteria=" 
     + jQuery.trim($("#txtSearchCriteria").val()), 
     async: true, 
     beforeSend : function(){ 
     $("#Loading").show(); //gif... just feed back 
     LastSearchCriteria = $.trim($("#txtSearchCriteria").val()); 
     }, 
     success: function(msg){ 
     $("select[id$=MyTable]").remove(); 
     $("#fldMyTable").prepend(msg); 
     $("#Loading").hide(); 
     } 
    }) 
    } 
} 

你也可以检查jQuery.ajax() documentation

0

正如ITroubs所说,不要在数据库中构建HTML。个人而言,我发现在我的ASP页面中构建完整的HTML并只是呈现HTML,而不是以JSON格式返回匹配结果,然后通过在jQuery中构建元素来显示它更容易。我发现在ASP页面上编辑和维护HTML要比改变构建显示的JavaScript更容易。

但是,以JSON格式返回结果确实有其优点。它更简洁,更易于调试。它也会给你更多的灵活性,你可以用结果做什么。