javascript - 对象不支持属性或方法 'replace'

标签 javascript jquery

我的 javascript 代码中出现奇怪的错误。

这是代码示例

function FetchData()
{
var selValue=$("select[id$=ddlComponents]").val()
    var param=$.param({ID:selValue});

    var method="proxy.aspx/GetComponentsValuesAgainstOilValue";

$.ajax({
    type: "POST",
    url: method,
    data: param,
    contentType: "application/json",
    dataType: "json",
    success: function(response) {

    if (response.replace(/"/g, '') == '{d:[]}') 
    {
         response = eval('(' + response + ')').d;
     }

    },
    error: function(xhr,error,status)
    {   
        alert(error);
    }
  });

它在下面的代码行中给我一个错误

if (response.replace(/"/g, '') == '{d:[]}') 
    {
         response = eval('(' + response + ')').d;
    }

对象不支持属性或函数“替换”。但 replace 函数以其他方式处理字符串变量。

我的 JQuery 版本是 1.6.4

请帮忙。

谢谢 维维克

最佳答案

response 已经是一个对象。您不需要自己进行任何 JSON 解析。

关于javascript - 对象不支持属性或方法 'replace',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7647490/

相关文章:

javascript - 尝试通过循环悬停时留下的 jquery 动画来获得平滑的幻灯片效果

javascript - 使用绝对定位和 z-index 堆叠动态添加的图像

javascript - 为什么我的 JavaScript 无法发布或提交到我的数据库?

javascript - 将 Leaflet LatLng 转换为 x,y 像素图像叠加层

javascript - Angular 5 错误 :Can't bind to 'ngForFor' since it isn't a known property of 'li'

javascript - 0 或 x - y 字符的正则表达式

javascript - process.stdout,tty$WriteStream。该类型与stream.Writable不兼容

javascript - 如何动态添加/删除 .current 类到使用多个 .html 页面单击的每个导航链接?

javascript - div 中文本的 JQuery 选择器

javascript - 需要在多个播放列表中单击事件