调用函数时获取typeError

时间:2013-10-29 05:35:09

标签: javascript php

我收到错误 - TypeError:updateAPI不是一个函数我不知道为什么会发生这种情况

该功能的代码如下

var APIS = '<?=preg_replace("/'/", "\'", json_encode($apis))?>';
var APISP = $.parseJSON(APIS);

var changedTo = 'left';
var updateAPI = function(id)
{
    /* Function Statements */
};

我调用此函数的代码是

window.setInterval(function() {
var ele = document.getElementById('itemSelector');
updateAPI((ele.options[ele.selectedIndex].id).replace(/[_\D]+/, ''));
}, 100);

有人可以帮忙吗?提前谢谢。

1 个答案:

答案 0 :(得分:1)

你使用转义字符是错误的。即使看到StackOverflow完成问题的格式化之后,这一点也很明显。您使用了正斜杠(/)而不是反斜杠(\)。因此,var updateAPI包含在该字符串中,updateAPI未定义 试试这个:

var APIS = '<?=preg_replace("\'/", "\'", json_encode($apis))?>';

或者可能取决于你想要的正则表达式,你可能想要这个:

var APIS = '<?=preg_replace("/\'/", "\'", json_encode($apis))?>';