过去用JavaScript写ASP时碰到的几个问题。

来源:互联网 发布:网络小说家排行榜 编辑:程序博客网 时间:2024/04/29 04:39
 

HTML Tags and JavaScript tutorial



过去用JavaScript写ASP时碰到的几个问题。





1.能否在一个页面中同时使用VBScript和JScript来写服务器端的脚本呢?
可以的话该怎么写呢?
 由于<
%@language=""%
>这个语句只能一个页面中出现一次,
所以想要用它来设置多种脚本同时在服务器端的一个页面中执行做不到,
但是可以通过<script language="" runat=server>这条语句,实现目的.
比如页面中有这条语句<
%@LANGUAGE="JAVASCRIPT
" CODEPAGE="936"%>
那么该页面中所有<%……%>当中的脚本都必须是javascript脚本,
然后可以用<script language="vbscript" runat=server>……</script>
这样,script标签中就可以用vbscript脚本了.
不知道我说的对不对,渴望大家指点.
2.ASP获取客户端提交的数据,如何用JavaScript判断客户端是否传递了某个参数。
假设有一页面show.asp,用户有可能直接请求该页面不带如何参数,也有可能带参数,
像这样 show.asp?ID=**
现在我想在服务器端判断有没有ID这个参数,要用JScript不要用vbscript.
我用了以下几种方法均无效
if(Request.QueryString("ID") == "")    不论有无参数ID该判断始终为假
if(Request.QueryString("ID") == null)  也是始终为假
if(typeof(Request.QueryString("ID")) == undefined)
if(typeof(Request.QueryString("ID")) == "undefined")
以上两个判断也始终为假,typeof(Request.QueryString("ID"))得到的结果是object
var id = Request.QueryString("ID");如果url中没有带ID参数,
这个语句赋给id的会是一个无内容的object对象,直接当字符输出它的话,会输出undefined。
所以要判断到底有没有传递参数ID,可以先做一个数据类型转换,
var id = "" + Request.QueryString("ID");
或者:var id = new string(Request.QueryString("ID"));
然后就可以这样来判断,if(id == "undefined")
如果url中没有传递ID这个参数,上面这个判断就会为真,否则为假。