Javascript 是否从HTML中删除字符串?

Javascript 是否从HTML中删除字符串?,javascript,jquery,Javascript,Jquery,在我的代码中,我向站点发送get请求,有时返回的HTML顶部有如下字符串,导致jQuery出错 比如说 4341-b087-58848cd597a7%26mode%3d%26code%3d500|<div>Div</div> 每次弦都有一些共同点;它们都以4开头,以%26mode%3d%26code%3d500| 我如何检查文本%26mode%3d%26code%3d500 |是否在页面中,如果是,如何删除从4到%26mode%3d%26code%3d500 |的所有内

在我的代码中,我向站点发送get请求,有时返回的HTML顶部有如下字符串,导致jQuery出错

比如说

4341-b087-58848cd597a7%26mode%3d%26code%3d500|<div>Div</div>
每次弦都有一些共同点;它们都以
4
开头,以
%26mode%3d%26code%3d500|

我如何检查文本
%26mode%3d%26code%3d500 |
是否在页面中,如果是,如何删除从
4
%26mode%3d%26code%3d500 |
的所有内容(包括这些内容),以便不会出错? 我的代码是这样的

$.get(url).done(function(data) {
    callback(data.replace(/img/gi, "flip");
}
谢谢

您可以使用regexp:

data = data.replace(/^4.*%26mode%3d%26code%3d500\|/, '');
或者你可以把整件事都放在一个DIV中:

var Item = $('<div>', { html: data }).find("#ct100").attr("href");
var Item=$('',{html:data}).find(“#ct100”).attr(“href”);

如果字符串位于响应的开头,简单快速:

$.get(url).done(function(data) {
    data = data.split('%26mode%3d%26code%3d500|')[1];
}

您甚至可以使用javascript
string
函数来消除此问题:

var pos = data.lastIndexOf("%26mode%3d%26code%3d500|");
var reqPos = pos + 24; //last position of above string + number of chars in above string
var result = str.slice(reqPos);
alert(result); //will give you expected output

您如何处理导致错误的响应?(在回调中)
var Item=$(数据);控制台日志(项目)相同的问题,刚刚测试过。感谢您的帮助,我忘记了在regexp中转义
。在div中包装效果很好,但是30%的时间项是未定义的:(嗯,这可能意味着返回的数据中没有
#ct100
元素。使用此代码您无法做到这一点。
var pos = data.lastIndexOf("%26mode%3d%26code%3d500|");
var reqPos = pos + 24; //last position of above string + number of chars in above string
var result = str.slice(reqPos);
alert(result); //will give you expected output