因此,我将WordPress中的一些选项序列化,然后将它们本地化,以便在jQuery脚本中使用,但我接下来要做的事情不起作用。
jQuery(\'.advert\')+ lu_ban_object.method +(\'<div>Hello World</div>\')
所以在我的db中,我已经序列化了一些值;以下是被本地化为用作用户选择的方法的数据
s: 6:“方法”;s: 5:“.包装”;}
本质上,它应该做的是;
jQuery(\'.advert\').wrap(\'<div>Hello World</div>\')
用户还可以附加、前置、换行等,但它不起作用,方法正在本地化和序列化,因此应该可以工作,但它不起作用。我也尝试过以下方法:;
jQuery(\'.advert\')lu_ban_object.method(\'<div>Hello World</div>\')
jQuery(\'.advert\')jQuery(lu_ban_object.method)(\'<div>Hello World</div>\')
只是不起作用。。。。任何人都知道如何解决这个问题。还是我做错了?我只是在设置页面中有一个列表,每个列表都有一个不同方法的值,例如;
<select name="lu_ban_data[method]" id="lu_ban_data" />
<option value=".append">Append</option>
<option value=".prepend">Prepend</option>
<option value=".wrap">Wrap</option>
<option value=".parent().parent().wrap">Parent</option>
update: var dump
array (size=4)
\'title\' => string \'My custom title\' (length=15)
\'msg\' => string \'My message\' (length=10)
\'image\' => string \'http://i.imgur.com/3tPjx4l.png\' (length=30)
\'method\' => string \'.prepend\' (length=8)
我尝试了支架解决方案,但仍然没有结果,
jQuery(\'.advert\')[lu_ban_object.method]("<div>Hello World</div>")
我收到以下错误:
Uncaught TypeError: Object [object Object] has no method \'.prepend\'
所以我添加了加号,消息消失了,但div仍然没有添加到页面中
+[lu_ban_object.method]+
下面是我在标题中打印的本地化数据
<script type=\'text/javascript\'>
/* <![CDATA[ */
var lu_ban_object = {"title":"My custom title","msg":"My message","image":"http:\\/\\/i.imgur.com\\/3tPjx4l.png","method":".prepend"};
/* ]]> */
</script>