Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/379.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用onclick调用属性对象函数_Javascript_Jquery - Fatal编程技术网

Javascript 使用onclick调用属性对象函数

Javascript 使用onclick调用属性对象函数,javascript,jquery,Javascript,Jquery,我的JS看起来是这样的: <script type="text/javascript"> itemOptions["_myStuff"] = { first: "some_variable", second: "another_variable", getSomeValue: function(asd){ ... }, doSomething: function(){ ... } } some other JS stuff </scr

我的JS看起来是这样的:

<script type="text/javascript">
itemOptions["_myStuff"] = {
  first: "some_variable",
  second: "another_variable",

  getSomeValue: function(asd){
    ...
  },

  doSomething: function(){
    ...
  }
}
some other JS stuff
</script>
... onclick="itemOptions["_myStuff"].getSomeValue(\'' asd '\'); ...">
我试图避开
itempoptions
\u myStuff
周围的引号,但没有成功。有什么办法吗


另外,代码是以这种格式提供给我的,我只是在上面工作,所以我不知道为什么这样做。

您可以在双引号字符串中使用单引号。试试这个:

onclick="itemOptions['_myStuff'].getSomeValue(' asd ')";
... onclick="itemOptions[\'_myStuff\'].getSomeValue(...">

我想你只要正确的逃跑就能解决这个问题。试试这个:

onclick="itemOptions['_myStuff'].getSomeValue(' asd ')";
... onclick="itemOptions[\'_myStuff\'].getSomeValue(...">

尝试在JavaScript中附加事件以完全避免此问题。可能存在重复,@elclanrs-但元素的HTML代码(包含
onclick=…
)是在特定情况下动态创建的,因此如果我将事件附加到它,事件将不会附加任何内容,因为按钮尚未创建。您需要的是事件委派。您缺少结束引号