工作:jQuery 跨域请求
jQuery请求示例
$.ajax({
type : "get",
async : false,
url : "ajaxHandler.ashx", //实际上访问时产生的地址为: ajax.ashx?callbackfun=jsonpCallback&id=10
data : {id : 10},
cache : false, //默认值true
dataType : "jsonp",
jsonp: "callbackfun",//传递给请求处理程序或页面的,用以获得jsonp回调函数名的参数名(默认为:callback)
jsonpCallback:"jsonpCallback",
//自定义的jsonp回调函数名称,默认为jQuery自动生成的随机函数名
//如果这里自定了jsonp的回调函数,则success函数则不起作用;否则success将起作用
success : function(json){
alert(json.message);
},
error:function(){
alert("erroe");
}
)};
异步响应
public class ajaxHandler : IHttpHandler
{
public void ProcessRequest (HttpContext context) {
context.Response.ContentType = "text/plain";
context.Response.Header("Access-Control-Allow-Origin","*");
string callbackfun = context.Request["callbackfun"];
context.Response.Write(callbackfun + "({name:\"John\", message:\"hello John\"})");
//此处的callbackfun + "("+ 内容 +")"为必须的
context.Response.End();
}
public bool IsReusable {get {return false;}}
}
替换内容的Img标签的Src路径
function ImgSrcReplace(content) {
var Imgs = $(content).find("img");
if (Imgs.length > 0) {
for (var i = 0; i < Imgs.length; i++) {
content = content.replace('src="/', 'src="http://www.domain.cn/');
}
}
return content;
}
过滤HTML 标签
function removeHTMLTag(str) {
str = str.replace(/<\/?[^>]*>/g, ''); //去除HTML tag
str = str.replace(/[ | ]*\n/g, '\n'); //去除行尾空白
//str = str.replace(/\n[\s| | ]*\r/g,'\n'); //去除多余空行
str = str.replace(/ /ig, '');//去掉
return str;
}