Javascript RegExp 在 IE 中不起作用

标签 javascript regex internet-explorer

参数return_value包含

   <textarea>{"id":43,"description":"","item_id":28,"callback":"addNewAttachment","filename":"foo.jpg",,"type":"posts","ext":"jpg","size":145}</textarea>

下一段代码删除了 Firefox、Chrome 中的 textarea 标签,因此可以在 arr[1] 中访问内容。在 IE 中调用 alert("Failure")。

function addAttachment(returned_value) {
    var re = new RegExp ("<textarea>(.+)</textarea>");      
    var arr = re.exec(returned_value);
    if(arr != null && arr.length > 1) {
        var json = eval('(' + arr[1] +')');
    } else {
        alert("Failure");           
    }   
    window[json.callback](json);
}

returned_value 来自 ajax 调用。我使用 JQuery。

测试

这也不起作用:

var re = new RegExp (/<textarea>(.+)<\/textarea>/);

解决方案

问题是 IE 将 textarea 字符串转为大写,而 firefox 将其转为小写。

下一个正则表达式就解决了。

var re = new RegExp ('<textarea>(.+)</textarea)>','i');

最佳答案

这是区分大小写的问题吗? new RegExp(..., "i") 可能有帮助?

关于Javascript RegExp 在 IE 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1237595/

相关文章:

php - preg_match 范围内的匹配点

php - session 变量未设置,但仅在 Internet Explorer 中设置,并非在所有计算机上设置

javascript - '&' symbol got escaped in the url when used with ' 窗口位置'

javascript - 为什么 html 页面在 javascript 结束提示后呈现 document.write

ruby - 在 Ruby 的变量中保存多个正则表达式缓冲区?

asp.net - 如何获取每个 IE 实例的 session ID?

php - 为什么我网站上的所有 html 表单都禁用了 Internet Explorer 自动完成功能?

javascript - 异步/等待上传任务

javascript - JQuery 选择器不适用于 id

javascript - 当不同的链接包含相同的词时,用链接替换词