几个典型的javascript问题

freewuyang 2002-09-09 05:53:51
小弟从没在web上编过程序,今天头给了个任务,是在网页上输入查询条件来生成查询字符串,现在有几个问题没有解决,希望各位告知

1,我有几个Xml文件作为网页的数据源,用途是动态的添加网页上的下拉框的内容,
eg: xml文件中有<a>11<a><b>22<b>,想把"11","22"作为网页上combox1的下拉可选项
2.有个文本框需要用户输入日期 ,以YYYYMMDD格式,现在需要用户输入的时候如果格式不对要当时校验出来,焦点离开时发出警告(可以为空)

3.有个文本框需要用户输入固定长度的数据,如果用户没输入固定长度则要在焦点离开该文本框时发出警告(可以为空)

第一个问题50分,另两个25,在此先行谢过,望各位成全. ~(^oo^)~
...全文
77 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
qiushuiwuhen 2002-09-10
  • 打赏
  • 举报
回复
<input value=YYYYMMDD onblur='if(!strDate(value)){alert("wrong");this.select();}'>
<script>
function strDate(str){
var reg = /^(\d{4})(\d{2})(\d{2})$/;
var r = str.match(reg);
if(r==null)return false;
r[2]=Number(r[2])-1
var d= new Date(Number(r[1]),r[2],Number(r[3]));
if(d.getFullYear()!=Number(r[1]))return false;
if(d.getMonth()!=Number(r[2]))return false;
if(d.getDate()!=Number(r[3]))return false;
return true;
}
</script>
freewuyang 2002-09-10
  • 打赏
  • 举报
回复
感谢秋,独两位,第一个问题已经解决了

to qiushuiwuhen(秋水无恨)
您给的第二个问题的解答,只能判断出是否是数字,不能判断是否是日期
比如我输入19888888肯定是不合理的,但也可以通过

to superdev(sd)
你说的把字符串转换为date对象,我不知如何转换,希望能给我点源代码

谢谢
superdev 2002-09-10
  • 打赏
  • 举报
回复
1、没用过!)
2、可以把用户输入的字符串转换成一个date对象如果成功,说明输入正确。
3、判断输入框的长度if(document.form1.text1.value.length!=5)....
richardluopeng 2002-09-10
  • 打赏
  • 举报
回复
to fokker(独孤龙) ( )

我按照你说的怎么不行。
<html>
<head>
<SCRIPT language="JavaScript">
function addDemo(){
demo.length=0;
for(i=0;i<x.documentElement.childNodes.length;i++)
demo[demo.length++].text=x.documentElement.childNodes[i].text
}
</SCRIPT>
</head>
<body onload="addDemo()">
<XML id="x" src="1.xml">
</XML>
<select id=demo></select>
</body>
</html>



1.xml


<data>
<a>11</a>
<b>22</b>
</data>
freewuyang 2002-09-10
  • 打赏
  • 举报
回复
谢谢各位
fokker 2002-09-09
  • 打赏
  • 举报
回复
如果你有现成的xml文件,可以这样写:
<html>
<head>
<SCRIPT language="JavaScript">
function addDemo(){
demo.length=0;
for(i=0;i<x.documentElement.childNodes.length;i++)
demo[demo.length++].text=x.documentElement.childNodes[i].text
}
</SCRIPT>
</head>
<body onload="addDemo()">
<XML id="x" src="../path/filename.xml">
</XML>
<select id=demo></select>
</body>
</html>

freewuyang 2002-09-09
  • 打赏
  • 举报
回复
to 秋大侠

很感谢你的帮助,但是我看不懂阿,能否麻烦你贴一个有这几个功能的现成的网页的源码上来.我知道这样有些过分,主要是现在我的时间来不及自己研究阿.
谢了
qiushuiwuhen 2002-09-09
  • 打赏
  • 举报
回复
<input value=YYYYMMDD onblur='if(value.length!=8){alert("wrong");this.select();}'>
qiushuiwuhen 2002-09-09
  • 打赏
  • 举报
回复
<input value=YYYYMMDD onblur='if(!/^\d{8}$/.test(value)){alert("wrong");this.select();}'>
qiushuiwuhen 2002-09-09
  • 打赏
  • 举报
回复
<xml id=x>
<data>
<a>11</a>
<b>22</b>
</data>
</xml>
<select id=demo></select>
<script>
demo.length=0;
for(i=0;i<x.documentElement.childNodes.length;i++)
demo[demo.length++].text=x.documentElement.childNodes[i].text
</script>

87,994

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧