标签: responsetext

作为 DOM 对象的 Ajax 响应

有没有办法从典型的 ajax 函数获取响应,以便可以用 getElements 对其进行剖析?我已经尝试过了query.responseText.getElementById,但效果和看起来一样糟糕。不过,您应该能够通过看到该片段来了解我想要实现的目标。我只需要从 ajax 响应中获取元素,就像获取普通 DOM 对象一样。

另外,请不要建议使用 jQuery。当我有很多脚本并且可以使用它的很多功能时,我会使用它,但在这种情况下,我只有一个简短的脚本和一个 70 倍大小的库,这似乎是一种浪费。

javascript getelementbyid responsetext

4
推荐指数
1
解决办法
4190
查看次数

用于处理responseText的eval和window.json.parse之间的区别?

我手边有以下代码

var finalCompleteData = eval("("+"jsonresponse.responseText +")");

当我使用它时,我在Fortify中收到一个安全漏洞错误,说它可能导致Javascript Hacking.所以,我把它改成了

var finalCompleteData = window.json.parse(jsonresponse.responseText);

为此,Fortify没有显示错误.window.json.parse方法有什么作用?

你能解释一下吗?提前致谢 :-)

javascript responsetext

4
推荐指数
1
解决办法
2318
查看次数

为什么responseText返回空白?

我有一个数据库表,其字段包含位置的纬度和经度坐标.我想使用数据库中的信息为Google Map视图创建标记.

我已经将查询函数作为

function getCords(){
  $link = connectDB();
  $query = "SELECT * FROM tour";
  $results = mysqli_query($link, $query);

  $jsonArray = array();
  while ($row = mysqli_fetch_assoc($results)){
    $jsonArray[] = array('fileName' => $row['FileName'], 'lat' => $row['Lat'], 'lon' => $row['Lon']);

  }

return json_encode($jsonArray);
}
Run Code Online (Sandbox Code Playgroud)

当我从php页面调用此函数时,它返回通常的JSON格式.

我的问题是执行ajax查询.我在上面的php脚本文件中有查询功能,该文件包含六个左右的实用程序函数,用于控制登录,注销,注册等.为了通过jquery查询数据库,我试过了

var request = $.ajax({
  type:"GET",
  url: "includes/phpscripts.php?action=cords",
  type: "json"
});

var response = request.responseText;
Run Code Online (Sandbox Code Playgroud)

我的问题是响应总是空的.这是由于URL的形成还是由于其他原因造成的?

mysql ajax jquery responsetext

4
推荐指数
1
解决办法
8995
查看次数

从responseText获取特定内容

我正在进行ajax调用,我从中获取内容responseText.

我通过使用alert内部确认,responseText包含整个页面作为string.

没关系.现在,我需要将其转换为DOM并使用提取从字符串具体内容getElementsByTagName,getElementsByName等...

我的问题是这些似乎都不起作用.

我已经阅读了很多关于使用的参考文献responseXML,responseText但是这让我回来了null.

所以,通过坚持responseText,我怎样才能得到我想要的特定元素?

例如,如果我的回复包含以下内容:

<html>
<head>....</head>
<body>....
 .....
 <table>
 <tr>
 <td>sometext</td>
 <td>someothertext</td>
 </tr>
 <tr>
 <td>sometext</td>
 <td>someothertext</td>
 </tr>
 <tr>
 <td>sometext</td>
 <td>someothertext</td>
 </tr>    
 </table> 
 <div> somediv </div>
 </body>
 </html>     
Run Code Online (Sandbox Code Playgroud)

如何访问表的第二行及其值?或者div等..所以,现在在我的实际html中,我有这样的感觉

<html>
<head>.....</head>
<body>
<table><tr><td id="test">Test</td></tr></table>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

我希望在我的实际html表中解析提取的元素/值.

document.getElementById('test').innerHTML = the_extracted_elements_from_responseText

javascript element xmlhttprequest responsetext

4
推荐指数
1
解决办法
9783
查看次数

JQuery when() then() 导致缺少 ajax responseText

这让我难住了。我有一组 url(用于数据),我需要将其拉入页面并在加载所有结果后处理结果。我正在尝试使用 JQuerys Deffered 功能来确保在处理结果之前所有 ajax 调用都已完成。一旦我介绍了它(when().done() 功能),我的 responseText 就神奇地消失了。

我最简单的例子:

$.when([$.ajax("pathToData")]).done(
    function(results) {
        console.log(results[0]);               //object with a responseText attribute
        console.log(results[0].responseText);  //undefined !!!
    }
)
Run Code Online (Sandbox Code Playgroud)

我怀疑我遗漏了一些简单的东西,但是我阅读的文档越多,这看起来就越正确。我希望其他人可以轻松地发现问题并为我指明正确的方向。提前致谢!

ajax jquery responsetext deferred

4
推荐指数
1
解决办法
2181
查看次数

responseText包含额外的空白字符(新行,换行符),如何防止和删除它们?

我有一个调用php文件的ajax脚本.

php文件回显"是"或"否",我想用字符串进行逻辑比较.

在javascript中,我想比较responseText中的字符串,看它是否= ="是"(或"否").但比较失败了.

所以我做了警告responseText,它确实显示"是"(或"否")作为字符串.但我在这里读到,responseText可能包含隐藏的空白字符,所以我做了responseText的字符串长度,它表明字符串长度比它应该的长4个字符.所以我转发了responseText警报(escape(responseText)),它显示我在responseText字符串的末尾隐藏了%0A和%0D(换行符和换行符).

我读到这些字符是由php添加的,但我也读到不同的php版本/服务器之间的额外字符是不同的.

如何在不使用正则表达式的情况下防止这些额外的空格,因为正则表达式可能会删除有意的空格?

请不要建议使用jquery或mootools作为答案.

TIA

javascript php ajax responsetext

2
推荐指数
1
解决办法
7274
查看次数

为什么我不能设置一个等于XMLHttpRequest的responseText值的变量?

如果我在XHR的onreadystatechange函数中,我可以很容易地做到document.title = xhr.responseText,但如果我让函数返回responseText,我就不能设置一个等于我的XHR外层包装的变量来使它等于响应; 这有什么办法吗?

我的包装:

ajax = function(url, cb)
 {
    xhr = (window.XMLHttpRequest)
        ? new XMLHttpRequest()
        : new ActiveXObject('Microsoft.XMLHTTP');
    xhr.onreadystatechange = function()
     {
        if (xhr.readyState == 4 && xhr.status == 200)
         {
            cb(xhr.responseText);
         };
     }
    xhr.open('get', url, true);
    xhr.send();
 };
Run Code Online (Sandbox Code Playgroud)

现在,如果我做了类似的事情:

ajax('bacon.txt', function(_)
 {
    document.title = _;
 }
Run Code Online (Sandbox Code Playgroud)

它绝对完美; document.title实际上成为了对bacon.txt的调用的responseText.但是,如果我尝试以这种方式实现它:

document.title = ajax('bacon.txt', function(_)
 {
    return _;
 }
Run Code Online (Sandbox Code Playgroud)

没有这样的运气.任何人都可以澄清为什么会这样吗?};

javascript ajax responsetext

0
推荐指数
1
解决办法
1640
查看次数