1

我有一个 html 文档,它有 2 个 div(左和右)并且文档加载了一些 js 函数,一个名为 editme 的函数通常会加载到左 div 中,但是当用户展开右导航时,我希望这个 editme 函数启动/打开一个新窗口并做一些事情,这意味着如果可能,以下选项之一将起作用:1)销毁现有函数并重新创建一个具有相同名称的新函数 2)动态更改 js 函数

哪个是可能的以及如何?

谢谢。

根据建议添加以下内容:

edit=function(){} // works, however less value

edit=function(id) { 'window.open("editMe.cfm?taid="+id,"edit","left=260,top=20,height=410,width=590,resizable=1,scrollbars=1")' } // fails

SyntaxError: unterminated string literal

attempted to scape the double quotes like the following to no avail, 'window.open(\"editMe.cfm?taid=\"+id,\"edit\",\"left=260,top=20,height=410,width=590,resizable=1,scrollbars=1\")'

难道我做错了什么?

仅供参考,此代码是 onclick 事件的其他代码的一部分。

4

1 回答 1

5

函数是 JavaScript 中的一等对象。只需将新函数重新分配给您已经(隐式)创建的变量......

function foo() {
    //do stuff
}

//now, reassign the var to do something else
foo = function() {
    //do other stuff
}

并不是说这是一种好习惯……但是要回答您的问题,是的,这是可能的。

于 2013-04-24T16:28:18.120 回答