2

我正在创建一个 jquery 函数,但是将一些变量传递给我的函数时遇到问题。这就是我想做的事情,我在下面恢复了我的代码:

var func = "appendTo";
var myid = "thisismyid";
var element = "div";
$("<"+element+"/>"{if(myid != ''){ id:myid}}).func($elem);

有办法吗?这是我能得到的唯一工作代码:

$("<"+element+"/>").appendTo($elem);

先感谢您。

4

3 回答 3

1

你可以这样做:

$("<"+element+"/>"), { id: myid ? myid : null})[func]($elem);
于 2013-10-24T23:57:53.340 回答
1

创建元素时的第二个参数是对象。你不能用 if 语句来打断一个对象。但是,您可以使用三元来实现相同的结果:

var func = "appendTo";
var myid = "thisismyid";
var element = "div";
$("<"+element+"/>", {id: (myid != '' ? myid : '') }).func($elem);
于 2013-10-24T23:59:17.000 回答
1

我使用以下代码修复了代码:

$("<"+element+"/>",{id: (myid != '' ? myid : '')})[func]($elem);
于 2013-10-25T00:19:11.373 回答