DDR爱好者之家 Design By 杰米
两条防线,一个函数:
试问你如何能保证客户端和服务器端具有相同的功能?表单域的验证闪现在我们眼前。别人把你的html复制到另外一个脚本,然后改变客户端的表单域验证--这并不是一件难事。摆在眼前的解决方法是将表单域的验证放置在服务器端。但那又意味着因为使用者的一个小错误,都要给服务器端要返回一串的错误信息。那么,我们何不同时拥有二者呢?不仅仅如此,我们还可以在客户端和服务器端使用同一个javascript函数来保证二者的完全一致性。
看看下面这一小段,请特别注意一下checkMyZip()函数。
复制代码 代码如下:
<%@LANGUAGE="JavaScript"%>
<%
//No ASP Here, just a regular HTML Page
%>
<HTML>
<SCRIPT LANGUAGE="JavaScript">
<!--Hide
function checkMyZip(zipCode)
    {
    var myRegularExpression=/(^\d{5}$)|(^\d{5}-\d{4}$)/
    if (myRegularExpression.test(zipCode) == true)
        {
        return nothingIsWrong();
        }
    else
        {
        return somethingIsWrong();
        }
    }

function nothingIsWrong()
    {
    //Do nothing
    return true
    }

function somethingIsWrong()
    {
    alert("Something is wrong with the zip code you provided.")
    document.zipCodeForm.zipCodeText.focus()
    return false;
    }
//Stop Hiding-->
</SCRIPT>
<STRONG>Type a valid U.S. Postal zip code into the box, and submit it.</STRONG>
<FORM NAME="zipCodeForm" ACTION="script05a.asp" METHOD="Post" 
onSubmit="return checkMyZip(document.zipCodeForm.zipCodeText.value)">
<INPUT TYPE="Text" NAME="zipCodeText"><BR>
<BR>
<INPUT TYPE="Submit" VALUE="Submit">
</FORM>
</HTML>



我们在本课中看到的就是作为你用javascript来编写asp脚本的一个最大的回报。看看下边的脚本,然后再次注意checkMyZip()函数。 
复制代码 代码如下:
<%@LANGUAGE="JavaScript"%>
<%
function checkMyZip(zipCode)
    {
    var myRegularExpression=/(^\d{5}$)|(^\d{5}-\d{4}$)/
    if (myRegularExpression.test(zipCode) == true)
        {
        return nothingIsWrong();
        }
    else
        {
        return somethingIsWrong();
        }
    }

function nothingIsWrong()
    {
    //Do nothing
    return true
    }

function somethingIsWrong()
    {
    return false;
    }

var zipCode=new String(Request.Form("zipCodeText"))

if (checkMyZip(zipCode)==true)
    {
    Response.Write("<HTML>\r")
    Response.Write("The zip code you provided... ")
    Response.Write("<FONT COLOR=\"RED\">")
    Response.Write(zipCode + "</FONT> is good.\r")
    Response.Write("</HTML>\r")
    }
else
    {
    Response.Write("<HTML>\r")
    Response.Write("The zip code you provided... ")
    Response.Write("<FONT COLOR=\"RED\">")
    Response.Write(zipCode + "</FONT> has a problem.\r")
    Response.Write("</HTML>\r")
    }

%>



这并不是最完美的列子,但是它包含了我们所要讲授的要点。客户端和服务器端严正数据的函数是完全一样的。支持函数是一样的饿,但是变化确是明显的。仅仅是个玩笑,让我们来看看下面的脚本。它并没有客户端验证。
复制代码 代码如下:
<%@LANGUAGE="JavaScript"%>
<%
//No ASP Here, just a regular HTML Page
%>
<HTML>
<STRONG>Type a zip code (with no client side validation) 
into the box submit it.</STRONG>
<FORM NAME="zipCodeForm" ACTION="script05a.asp" METHOD="Post">
<INPUT TYPE="Text" NAME="zipCodeText"><BR>
<BR>
<INPUT TYPE="Submit" VALUE="Submit">
</FORM>
</HTML>



第一部分小节:
这是本课程计划第一部分的小节。有过用vbscript编写asp的朋友并不需要在本站上有更进一步的研究。他们现在可以使用他们客户端脚本的使用技巧去将任何的函数(子程序),任何的页面,或者是任何的应用程序转换为javascript。
其他的朋友则需要留下来继续我们在第二部分的旅程。

本节原文及范例地址:http://aspjavascript.com/lesson05.asp
原文作者:James Clark 翻译:huahua 转载请注明
DDR爱好者之家 Design By 杰米
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
DDR爱好者之家 Design By 杰米

P70系列延期,华为新旗舰将在下月发布

3月20日消息,近期博主@数码闲聊站 透露,原定三月份发布的华为新旗舰P70系列延期发布,预计4月份上市。

而博主@定焦数码 爆料,华为的P70系列在定位上已经超过了Mate60,成为了重要的旗舰系列之一。它肩负着重返影像领域顶尖的使命。那么这次P70会带来哪些令人惊艳的创新呢?

根据目前爆料的消息来看,华为P70系列将推出三个版本,其中P70和P70 Pro采用了三角形的摄像头模组设计,而P70 Art则采用了与上一代P60 Art相似的不规则形状设计。这样的外观是否好看见仁见智,但辨识度绝对拉满。