尝试使用Javascript </script>替换<script>标记的内容

时间:2010-08-02 05:25:13

标签: javascript

我们公司为其e-comreace网站使用封闭式购物车系统。签出页面由我无法修改的cgi脚本生成。我想用它自己替换它生成的表单验证脚本。我试图替换的脚本是文档中的第二个脚本。我在页脚部分插入了以下脚本:

document.body.getElementsByTagName("SCRIPT")[1].innerHTML = "New Validation Function Here";

然而,当调用验证函数时,执行旧函数,而不是我的新函数。

我哪里错了?还有更好的方法吗?

克里斯

2 个答案:

答案 0 :(得分:5)

您可能更有可能更换全局范围内的验证功能。

<!-- Old script file -->
<script>

function doValidate(value) {
 return true;
}
</script>

<!-- New script file -->
<script>
function doValidateNew(value) {
 return false;
}
window.doValidate = doValidateNew;
</script>

答案 1 :(得分:1)

您无需替换已执行的旧SCRIPT标记。

验证函数只是一个值,函数名是一个变量,所以你可以这样做:

<script>

oldValidationFunctionName = function(param1, param2, whatever) {
    // the new function body here...
 }

</script>