怪哉!数组问题//web窗体
<%@ Page language="c#" Codebehind="note.aspx.cs" AutoEventWireup="false" Inherits="SUBBS.note" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<title>note</title>
<meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">
<meta name="CODE_LANGUAGE" Content="C#">
<meta name="vs_defaultClientScript" content="JavaScript">
<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ 要在这里作点改变 取名为“位置1” (也就是加脚本) ┃
┃ ┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
</HEAD>
///////////////////////////////加入onload事件/////////
<body MS_POSITIONING="GridLayout" onload="fillList(document.all.select1)">
<form id="Form1" method="post" runat="server">
<FONT face="宋体">
//加上id
<SELECT Id="select1" style="Z-INDEX: 101; LEFT: 232px; WIDTH: 192px; POSITION: absolute; TOP: 368px; HEIGHT: 24px">
<OPTION selected></OPTION>
</SELECT></FONT>
</form>
</body>
</HTML>
//该函数位于Jscript脚本文件 kook.js内 function fillList(sender) //sender 为dropdownlist对象(select元素)
{
var listItems=new Array("abc","def","hijk","niu"); ////这里也要改
if (sender!=null)
for(key in listItems)
sender.options[key]=new Option(provinces[key],provinces[key]);
}
//该函数不用说了吧
//实验1----------------------------------
//在位置1加入
<script language=javascript src="kook.js">
//运行可以通过一切正常//实验2----------------------------------
//打开脚本文件kook.js,把var listItems=new Array("abc","def","hijk","niu");改为
var listItems=new Array("张三","李四","王二","niu"); //如果只有两个中文元素可以通过调试//不过是乱码
///保存运行调试 错误“缺少对象”而且给出的错误信息中行号和列号均不对//实验3----------------------------------
//把kook.js文件中的 fillList函数复制到webform的位置1处并稍作修改<script language=javascript src="kook.js">中的
//language=javascript
//最终位置1处的代码为
<script language=javascript src="kook.js"> ////
function fillList(sender) //sender 为dropdownlist对象(select元素)
{
var listItems=new Array("abc","def","hijk","niu"); ////这里也要改
if (sender!=null)
for(key in listItems)
sender.options[key]=new Option(provinces[key],provinces[key]);
}
</script>////
运行调试可以通过一切正常通过实验得:
1.jscript脚本文件里的中文信息会产生错误//我想应该可以加上编译信息的吧不知请教中...?
2.为何调试错误的信息给出的不正确?
3.为何把函数考到客户端脚本里就不会错?
4.这个问题或许是很简单的问题,但是我却搞了半天,我老想成是代码语法错误(这个只是部分代码)真是人都不想做了,变蝴蝶吧!
5.一个人搞成长太慢太慢了。
6.请您帮忙解答一下感谢!
<%@ Page language="c#" Codebehind="note.aspx.cs" AutoEventWireup="false" Inherits="SUBBS.note" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<title>note</title>
<meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">
<meta name="CODE_LANGUAGE" Content="C#">
<meta name="vs_defaultClientScript" content="JavaScript">
<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ 要在这里作点改变 取名为“位置1” (也就是加脚本) ┃
┃ ┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
</HEAD>
///////////////////////////////加入onload事件/////////
<body MS_POSITIONING="GridLayout" onload="fillList(document.all.select1)">
<form id="Form1" method="post" runat="server">
<FONT face="宋体">
//加上id
<SELECT Id="select1" style="Z-INDEX: 101; LEFT: 232px; WIDTH: 192px; POSITION: absolute; TOP: 368px; HEIGHT: 24px">
<OPTION selected></OPTION>
</SELECT></FONT>
</form>
</body>
</HTML>
//该函数位于Jscript脚本文件 kook.js内 function fillList(sender) //sender 为dropdownlist对象(select元素)
{
var listItems=new Array("abc","def","hijk","niu"); ////这里也要改
if (sender!=null)
for(key in listItems)
sender.options[key]=new Option(provinces[key],provinces[key]);
}
//该函数不用说了吧
//实验1----------------------------------
//在位置1加入
<script language=javascript src="kook.js">
//运行可以通过一切正常//实验2----------------------------------
//打开脚本文件kook.js,把var listItems=new Array("abc","def","hijk","niu");改为
var listItems=new Array("张三","李四","王二","niu"); //如果只有两个中文元素可以通过调试//不过是乱码
///保存运行调试 错误“缺少对象”而且给出的错误信息中行号和列号均不对//实验3----------------------------------
//把kook.js文件中的 fillList函数复制到webform的位置1处并稍作修改<script language=javascript src="kook.js">中的
//language=javascript
//最终位置1处的代码为
<script language=javascript src="kook.js"> ////
function fillList(sender) //sender 为dropdownlist对象(select元素)
{
var listItems=new Array("abc","def","hijk","niu"); ////这里也要改
if (sender!=null)
for(key in listItems)
sender.options[key]=new Option(provinces[key],provinces[key]);
}
</script>////
运行调试可以通过一切正常通过实验得:
1.jscript脚本文件里的中文信息会产生错误//我想应该可以加上编译信息的吧不知请教中...?
2.为何调试错误的信息给出的不正确?
3.为何把函数考到客户端脚本里就不会错?
4.这个问题或许是很简单的问题,但是我却搞了半天,我老想成是代码语法错误(这个只是部分代码)真是人都不想做了,变蝴蝶吧!
5.一个人搞成长太慢太慢了。
6.请您帮忙解答一下感谢!
var listItems=new Array("abc","def","hijk","niu");
应为
var listItems=new Array("张三","李四","王二","niu");
<META http-equiv="Content-Type" content="text/html; charset=gb2312">
试试
if (sender!=null)
for(key in listItems)
{
// debugger;
oOption = document.createElement("OPTION");
oOption.value=key;
oOption.text = listItems[key];
sender.add( oOption);
}
我没有provinces的信息,所以改了部分代码,没有问题啊,是不是系统的问题
只要你把数组用中文来做 单独放到脚本文件里,
WEb穿体里加入<script language=javascript src=kook.js></script>
不用调用里面的函数一运行就出错了! 数组是英文的没有问题! 我从网上下的脚本只要含有中文数组就无法运行真是怪哉! 我用的是.net framework 2.0 bata2的版本好象每升级前就这样了,
还有我的ASP.net连不上Access,(错误信息"操作必须使用一个可更新的查询。
")保证不是代码问题,连SQL server 没有问题 我的操作系统是 xp sp2
就可以了,但我不想这样做