在html中执行javascript

在html中执行javascript,javascript,Javascript,我正在设计一个网站,试图改变价格。价格值由CMS即3dcart动态生成,并在代码中显示为[ITEMPRICE] 价格有货币符号和小数点,我正试图用JavaScript删除它们 这是HTML的一个示例 <span>[ITEMPRICE]</`span> 但我甚至不知道如何执行此函数,以便页面将更改为不带小数的值 我应该添加这个3dcart系统,它根据HTML模板生成最终的HTML,我正试图编辑这些模板以删除小数点,并创建一个包含所有产品信息(如价格等)的数据库。。我可以编

我正在设计一个网站,试图改变价格。价格值由CMS即3dcart动态生成,并在代码中显示为[ITEMPRICE]

价格有货币符号和小数点,我正试图用JavaScript删除它们

这是HTML的一个示例

<span>[ITEMPRICE]</`span>
但我甚至不知道如何执行此函数,以便页面将更改为不带小数的值


我应该添加这个3dcart系统,它根据HTML模板生成最终的HTML,我正试图编辑这些模板以删除小数点,并创建一个包含所有产品信息(如价格等)的数据库。。我可以编辑模板,但最终的HTML是动态生成的。

如下调用函数:-

<script>
..................
chop_price();
................................
</script>

当身体负重时,你可以称之为。。。。或者直接在一个脚本标签内盖章;在你提到的声明之后

您可以做的是在一个div中插入[ITEMPRICE],并指定一个类,例如:[ITEMPRICE],然后选择与该类匹配的所有项,并在主体加载时修改内部HTML

<head>
......
<script type="text/javascript">
function process_prices() {
    var elements = document.getElementsByClassName('item_price');
    for (i = 0; i < elements.length; i++) {
        var el = elements[i];
        el.innerHTML = chop_price(el.innerHTML);
    }
}

function chop_price(text) {
    var result = text;
    result = result.replace("$", "");
    result = parseInt(result);

    return result;
}
</script>
</head>

<body onload="process_prices();">
......
</body>

当然,最好的办法是修改CMS输出中的值。

将下面的代码段放在html的标题部分,然后使用相同的函数

<script type="text/javascript">

function chop_price()
{
[ITEMPRICE] = [ITEMPRICE].replace("$","");
[ITEMPRICE] = parseInt([ITEMPRICE]);
}

</script>
如果您使用按钮调用函数,我假设

<input type="button" value="Remove Doller" onclick="chop_price()" />

像这样使用window.onload事件

<script type="text/javascript">
    function chop_price(){
        [ITEMPRICE] = [ITEMPRICE].replace("$","");
        [ITEMPRICE] = parseInt([ITEMPRICE]);
    }

    window.onload = function() {
        chop_price();
    }
</script>

不能使用JavaScript修改模板变量

当浏览器看到它们时,整个页面中的模板将被处理,变量将被值替换

如果您想用JavaScript修改它们,您需要在DOM中搜索模板放置它们的位置,然后在那里修改它们


也就是说,正确的做法是在CMS中进行操作。

调用:chop_price;[ITEMPRICE]=。。。是语法错误或至少是运行时错误。无论你想做什么,都必须完全不同。亚历杭德罗·伊万刚刚给了我解决方案。它就像一个符咒。无论如何,感谢大家的帮助。感谢你们的回答,不幸的是,所提出的解决方案都不起作用。我应该提到,该网站的工作原理如下:有一个框架html将有网站模板的页眉和页脚,例如一个家庭html模板的实际内容在中心。3dcart系统有一个包含产品和价格的数据库,实际的最终html代码是动态创建的。html模板包含一组[parameter],从数据库中提取数据以生成最终页面。因此,您可以在CMS中更改价格,而无需触摸实际的html代码…[ITEMPRICE]=。。。甚至不是有效的JavaScript![ITEMPRICE]=。。。甚至不是有效的JavaScript!不管怎样,它可能是他的变量,我想这就是为什么他把->[]也就是我这样做的原因,[ITEMPRICE]是CMS的变量,就像$ITEMPRICE是PHP的变量一样。它不是JavaScript对象,这就是为什么它不能工作。是的,我知道它不是java脚本,我想你给那个变量临时命名,这就是我没有考虑的原因。
<script type="text/javascript">
    function chop_price(){
        [ITEMPRICE] = [ITEMPRICE].replace("$","");
        [ITEMPRICE] = parseInt([ITEMPRICE]);
    }

    window.onload = function() {
        chop_price();
    }
</script>