2010-08-02 33 views
0

我们公司为其电子商务网站使用封闭式购物车系统。检出页面由我无法修改的cgi脚本生成。我想用我自己的替换它生成的表单验证脚本。我试图替换的脚本是文档中的第二个脚本。我在脚注部分插入了以下脚本:试图用Javascript代替<script>标签的内容

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

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

我哪里错了?有没有更好的办法?

Chris

回答

1

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

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

<script> 

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

</script> 
5

您可能有更好的机会来替换全局范围内的验证函数。

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

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

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