货币变量等于美元符号,我该如何打印? Jquery问题

时间:2012-04-05 17:03:28

标签: jquery html escaping

没有太多的细节而且没有人太挂在它上面。

此案例的可变备用货币等于$。

我在将变量传递给HTML的部分使用Chrome V8,因此我可以在那里使用基本的Javascript函数,但是没有jQuery。

我通过Template Toolkit将变量传递给HTML,如下所示:

var backupcurrency =   [% backupcurrency %];

然后在我的JS中:

var temp = backupcurrency + '';
console.log(typeof(temp));     
console.log(temp);

这样的输出是temp是一个字符串,但temp的值不是'$'而是我获得的值:

function (a,b){return new e.fn.init(a,b,h)}

我想也许我可以附加到Chrome v8步骤中的字符串,以便美元符号被转义,但无论如何我应该能够在Jquery中执行此操作。

现在我知道这与使用Jquery有关,但我如何打印$-dollar标志并处理货币等于美元符号的情况,因为如果变量等于£或€我不要不希望这些用户遇到问题吗?

这是我想要使用变量的代码(再次是高级别以避免任何混淆)

HTML:

<div id="upsell"></div>

JS:

var prod = "<div id='upselltext'><h6>Price: " + temp + backupvalue + "/year</h6></div>";

$('#upsell').append(prod);

备用值是一个数字,在本例中为'12 .50'

编辑:

通过在变量传递给HTML

之前对变量使用JSON.stringify()来解决这个问题
stash({backupcurrency: JSON.stringify(backupcurrency), backupvalue: backupvalue });

然后HTML保持不变,但它被jquery识别为一个字符。

1 个答案:

答案 0 :(得分:0)

我对Template Toolkit一无所知,但如果'&#36'(带空格字符)有效,请尝试'&#36;'(用分号代替空格)。