“未捕获的SyntaxError:意外的令牌(”在简单的函数中

时间:2012-12-15 02:07:40

标签: javascript function syntax-error

我收到此错误:

  

Uncaught SyntaxError:意外的令牌(

当我没有注释掉这个功能时:

function setTextField(str)
{
        if ( (str == "") ||  (str == null) ) 
          str = "Enter Task Here";
        document.getElementById.("get_subject").value = str;
}

我试图从其他地方(稍后在代码中)执行此操作:

setTimeout('setTextField();', 1000);

为什么我收到此错误?

1 个答案:

答案 0 :(得分:7)

document.getElementById.("get_subject").value = str;
//                     ^ What's that doing there?

{token}.需要后跟一个属性名称的标记,才能成为有效的JS语法(不包括一些数字文字语法)。

你想:

document.getElementById("get_subject").value = str;

此外,永远不会永远,将字符串传递给setTimeout。它需要一个真正的功能!

setTimeout(setTextField, 1000);

或者如果您想执行更复杂的代码:

setTimeout(function() {
  setTextField(someArgument, someOtherArgument);
  //othercode
}, 1000);