以下为ASP页面代码:
<script language="JavaScript">
var fso=new ActiveXObject("Scripting.FileSystemObject");
var ff=fso.GetDrive("c");
alert("这是C盘序号:"+ff.SerialNumber);
</script>
<%response.write ff.SerialNumber '这样代码是显示不出结果的,如何在这个地方显示出来这个值? %>这对高手来说是个很弱智的问题,但是我确实不会,恳请指教哦,谢谢!!!
<script language="JavaScript">
var fso=new ActiveXObject("Scripting.FileSystemObject");
var ff=fso.GetDrive("c");
alert("这是C盘序号:"+ff.SerialNumber);
</script>
<%response.write ff.SerialNumber '这样代码是显示不出结果的,如何在这个地方显示出来这个值? %>这对高手来说是个很弱智的问题,但是我确实不会,恳请指教哦,谢谢!!!
这种写法是后台代码的写法,没法使用前台变量的
<script language="JavaScript">
var fso=new ActiveXObject("Scripting.FileSystemObject");
var ff=fso.GetDrive("c");
alert("这是C盘序号:"+ff.SerialNumber);
document.write(ff.SerialNumber);
</script>
ajax
表单提交
script,iframe,img 等 都可以像服务器提交数据
要让后台代码使用前台的参数,不进行通讯怎么能实现?你自己想想,前台代码由浏览器执行,后台代码由服务器执行,都不在同一台电脑上,能直接调用么?
<%%>这种方式写的后台代码是在页面加载前由服务器执行的,那时候前台页面都还没有生成,你怎么能使用前台js的变量?
楼上都给你说了,需要提交,用Ajax
给出前台代码:
function clickEvent()
{
var str="AJAX";//要提交到服务器的数据
var xmlhttp;
if (window.XMLHttpRequest)// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
else
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)//表示提交已完成
{
alert(xmlhttp.responseText);//弹出从后台传递过来的值
}
}
xmlhttp.open("post","other.aspx?str="+str+"&type=info",true);//str为传递的字符串,type为设置的标志
xmlhttp.send();
}
这是将字符串提交到aspx页面的代码,当然不是aspx页面的话前台代码仍然是这样,把页面换成你的就可以了
没用过asp的后台代码,给出asp.net的,你可以参考
protected void Page_Load(object sender, EventArgs e)
{
if (Request.QueryString["type"] == "info")//根据在url中设置的标志判断是否是匹配的回传
{
string theString = Request.QueryString["str"];//theString即获取到的字符串
Response.Write("来自服务器的数据");//将一个字符串再写往客服端
Response.End();
}
}