vbscript和jscript本质上没有区别,都属于在前台运行的代码。你想这个道理,你的php都已经在服务器端解析过发送到客户端去了,你在客户端用客户端程序(vbs/js)怎么来调用php程序,除非你再向服务器端submit一次。当然我们可以用php来生成动态的前台程序,举一个小小的例子,我要判断用户在输入月份的时候不是输入的今年以前的月份,而我们永远不可能去每个月改一次前台代码,所以我们可以这样做:var Month = document.form1.Month.value;if (Month < <? echo GetNowMonth() ?>)
{
alert("请您不要填写以往的月份");
document.form1.Month.value="";
document.form1.Month.select();
return false;
}这里的GetNowMonth()是自己写的一个php的方法,内容实在是人所皆知,不再多说。另外还有用户输入了一个合法的月份后,怎样去判断他接下来输入的日期是否合法,比如他输入了9月,就不能让他输入大于30的日期。如果用纯粹的vbs或者js,那是不是要写上一大堆的if then end if 或者if then呢?我们使用这样的方法:var NowYear = <? echo GetYear(NowDate())?>;
var NowMonth = <? echo GetMonth(NowDate())?>;
var NowDay = <? echo GetDay(NowDate())?>;if (Day < 1 || Day > <? echo DaysAmountOfThisMonth(GetMonth(NowDate()),GetYear(NowDate())) ?>)
{
alert("请您填写1至<? echo DaysAmountOfThisMonth(GetMonth(NowDate()),GetYear(NowDate())) ?>的日期");
document.form1.Day.value="";
document.form1.Day.select();
return false;
}当然,这其中涉及到几个自己写的php的函数,内容也是大家自己写得出来的。以上均是使用的JS,相信JS和VBS是相通的,希望这些能对你有所帮助!

解决方案 »

  1.   

    谢谢.但如果传递给php函数的参数是JS/VBS的变量呢?
      

  2.   

    既然是变量,当然是在VBS/JS运行之后的结果,此时,PHP早已在服务器解析完成,如果真的需要参数是JS/VBS的变量,只能重复 SUBMIT ,别无他法!网页流程:客户端申请访问;服务器响应;PHP解析完成+HTML读入;JS/VBS执行;结束!
      

  3.   

    楼上说得对~~vbs/js的变量是前台的~~不可能赋给后台的变量~~当然除非你向服务器端提交一次~~