gpt4 book ai didi

JavaScript 验证语法错误

转载 作者:行者123 更新时间:2023-12-02 20:33:18 25 4
gpt4 key购买 nike

我有这段 javascript,应该在客户端进行验证。我使用本教程创建了它: http://www.php-mysql-tutorial.com/wikis/php-tutorial/form-validation-using-php.aspx

不幸的是我收到了这个警告:“第 48 行存在语法错误。在修复此错误之前,代码提示可能不起作用”。

我的代码有 110 行长,所以我不想将其发布在这里,所以我通过 http://www.jslint.com/ 运行此代码,这就是告诉我的:“第 4 行第 5 字符出现问题:需要标识符,但看到的是“with”。”

我还是很迷茫,所以这里是代码开头的一个片段:

function checkForm()
{
var vcompName, vadd1, vadd2, vcountry, vcontact1, vtelephone1, vemail, vsiteurl;
with(window.document.form1)
{
vcompName = compName;
vadd1 = add;
vadd2 = add2;
vcountry = country;
vcontact1 = name;
vtelephone1 = tel;
vemail = email1;
vpackage = package;
vsiteurl = url;
}

if(trim(vcompName.value)=='')
{
alert('Please enter the company name');
vcompName.focus();
return false;
}
else if(trim(vadd1.value)=='')
{
alert('Please enter your address')
vadd1.focus();
return false;
}
}

你可以看到事情进展如何...这是 trim 功能

function trim(str)
{
return str.replace(/^\s+|\s+$/g,'');
}

最佳答案

这样的语法没问题,但你应该避免使用 with 关键字,因为它很慢并且可能存在歧义。我建议您重写以下 block

with(window.document.form1)
{
vcompName = compName;
vadd1 = add;
vadd2 = add2;
vcountry = country;
vcontact1 = name;
vtelephone1 = tel;
vemail = email1;
vpackage = package;
vsiteurl = url;
}

作为

  var o = window.document.form1;
vcompName = o.compName;
vadd1 = o.add;
vadd2 = o.add2;
vcountry = o.country;
vcontact1 = o.name;
vtelephone1 = o.tel;
vemail = o.email1;
vpackage = o.package;
vsiteurl = o.url;

还有一些其他问题,但 jlint 会将它们指出给您。

关于JavaScript 验证语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3716727/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com