2

我有一个 ajax 函数调用一个 visualforce 页面。响应返回带有 html doctype 的结果。我只想要数据。

$(document).ready(function() {
            $.ajax({
                type: "POST",
                url: "/apex/HotStuckLeadReportAjaxPage",
                data: { name: "John", location: "Boston" }
                }).done(function( msg ) {
                    alert( "Data Saved: " + msg );
                });
       });

输出:

Data Saved: 

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">


    {"sEcho":0,"iTotalRecords":"2","iTotalDisplayRecords":"2","aaData":[["8","1","sdf","test","test"],["9","12","asdf","asdf","asdf"]]}</html>
4

2 回答 2

4

在 HotStuckLeadReportAjaxPage 页面中添加 contentType

<apex:page  contentType="application/json">
于 2013-02-19T06:56:07.627 回答
0

在你的情况下,你可以

  1. 简单跳过第一行
  2. 确保您的服务器不发送它。细绳
  3. 将 Exact DocType 行替换为 Javascript,因为它在整个项目中通常不会更改。
  4. 做一个高级正则表达式删除[但它与字符串替换相同]
于 2013-02-19T06:57:15.053 回答