无需涉及太多细节,也无需人们过于关注它。
这种情况下的可变备用货币等于 $。
我在将变量传递给 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 有关,但我如何从字面上打印 $ - 美元符号并处理货币等于美元符号的情况,因为如果变量等于 £ 或 € 我不想要那些用户有问题?
这是我想在其中使用变量的代码(再次高级以避免任何混淆)
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 识别为一个字符。