某大型软件公司JavaScript考题,紧急求助!

SunShinejia 2004-12-15 09:29:18
请设计一个HTML文档,当打开该文档时,将显示出如下的页面(其中的总分是通过计算得到的):
该页面为一表格:
姓名 数学 历史 外语 总分
张三 78 92 85 255

还有两个按钮 “修改成绩” “关闭窗口”

1.当点击“关闭窗口”时,可以关闭当前窗口。
2.当点击“修改成绩”按钮时,可以在屏幕的中心位置打开以下的小窗口:

该小窗口有三个文本框:分别供输入数学、历史、外语三门课的新成绩
另有两个按钮:“修改数据” 和 “关闭窗口”

当点击“修改数据”按钮时,可以将所输入的新成绩修改到父窗口中的相应位置,同时重新计算总分的值。
...全文
535 22 打赏 收藏 转发到动态 举报
写回复
用AI写文章
22 条回复
切换为时间正序
请发表友善的回复…
发表回复
zzzxxxcccvvv 2004-12-16
  • 打赏
  • 举报
回复
up
baby520613 2004-12-16
  • 打赏
  • 举报
回复
我顶!想来上海吗?qq41861451
mikespook 2004-12-15
  • 打赏
  • 举报
回复
新窗口修改后用opener的方式将修改后的值写回到原窗口~~~`
代码懒得写了,好麻烦~~
JK_10000 2004-12-15
  • 打赏
  • 举报
回复
回复人: HHH3000(蓝色爱琴海 阿信fans 001号) ( ) 信誉:100 2004-12-15 10:45:00 得分: 0

---------
还有这么抠的题?!
raybest 2004-12-15
  • 打赏
  • 举报
回复
把第二个htm改用div隐藏看看
HHH3000 2004-12-15
  • 打赏
  • 举报
回复
楼上的都没审题~~!
要求一个htm文件~!
tianch 2004-12-15
  • 打赏
  • 举报
回复
我写了一个,经过Win2000+IE6测试,有两个文件,main.htm和change.htm
main.htm代码如下:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>无标题文档</title>
</head>
<script language="javascript">
function ChangeScroll(){
var result=showModalDialog("change.htm",null,"status:no;center:yes;help:no;minimize:no;maximize:no;dialogWidth:400px;scroll:no;dialogHeight:250px");
alert(result);
if (result!=""){
var scrolls=result.split(";");
for (var i=0;i<scrolls.length;i++){
var scritem=scrolls[i].split(":");
eval(scritem[0]).innerText=scritem[1];
}
sum=parseFloat(math.innerText)+parseFloat(history.innerText)+parseFloat(english.innerText);
amount.innerText=sum;
}
}
</script>
<body>
<table width="800" border="1" cellspacing="0" cellpadding="0">
<tr>
<td>姓名</td>
<td>数学</td>
<td>历史</td>
<td>外语</td>
<td>总分</td>
</tr>
<tr>
<td>张三</td>
<td id=math>78</td>
<td id=history>92</td>
<td id=english>85</td>
<td id=amount>255</td>
</tr>
</table>
<input name="Change" type="button" id="Change" value="修改成绩" onClick="ChangeScroll()">
<input name="close" type="button" id="close" value="关闭窗口" onClick="if (confirm('是否关闭本窗口?')) window.close();">
</body>
</html>




change.htm代码如下:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>无标题文档</title>
</head>
<script language="javascript">
function result(){
var sum="";
if (document.all("math").value!=""){
sum+="math:"+document.all("math").value+";";
}
if (document.all("history").value!=""){
sum+="history:"+document.all("history").value+";";
}
if (document.all("english").value!=""){
sum+="english:"+document.all("english").value+";";
}
window.returnValue=sum.substr(0,sum.length-1);
window.close();
}
</script>
<body>
<table width="200" border="1" cellspacing="0" cellpadding="0">
<tr>
<td>数学</td>
<td>历史</td>
<td>外语</td>
</tr>
<tr>
<td><input type="text" name="math" value=""></td>
<td><input type="text" name="history" value=""></td>
<td><input type="text" name="english" value=""></td>
</tr>
</table>
<input name="change" type="button" id="change" value="修改成绩" onClick="result()">
<input name="close" type="button" id="close" value="关闭窗口" onClick="if (confirm('是否关闭本窗口?')) window.close();">
</body>
</html>
ntvov 2004-12-15
  • 打赏
  • 举报
回复
但是楼主药的是新窗口中修改成绩,而这个却是个层啊
qd_jyx 2004-12-15
  • 打赏
  • 举报
回复
同意楼上的写法
meizz 2004-12-15
  • 打赏
  • 举报
回复
随手写了一个, 你自己再发挥一下:
<table border=1 width=400>
<tr>
<td>姓名</td>
<td>数学</td>
<td>历史</td>
<td>外语</td>
<td>总分</td>
<td><input type=button value="关闭窗口" onclick="opener='meizz';close()"></td>
</tr>
<tr>
<td>张三</td>
<td>78</td>
<td>92</td>
<td>85</td>
<td>255</td>
<td><input type=button value="修改成绩" onclick="mm(this)"></td>
</tr>
</table>

<div id=mmDiv style="position: absolute; z-index: 1; width: 240;
border: 1px solid block; display: none; background-color: yellow">
<form name=mmhide style="margin: 0">
数学: <input name=sx><br>
历史: <input name=ls><br>
外语: <input name=wy><br>
<input type=button value="修改数据">
<input type=button value="关闭窗口" onclick="closeLayer()">
</form>
</div>
<SCRIPT LANGUAGE="JavaScript">
<!--
function searchObjByTagName(obj, tag)
{
while(obj!=null && typeof(obj.tagName) != "undefind")
{
if(obj.tagName == tag.toUpperCase()) return(obj);
obj = obj.parentElement;
}
return null;
}
function getAbsLeft(e){var l=e.offsetLeft; while(e=e.offsetParent) l += e.offsetLeft; return l;}
function getAbsTop(e) {var t=e.offsetTop; while(e=e.offsetParent) t += e.offsetTop; return t;}
function closeLayer()
{
var n = parseInt(document.forms["mmhide"].sx.value, 10);
n += parseInt(document.forms["mmhide"].ls.value, 10);
n += parseInt(document.forms["mmhide"].wy.value, 10);
currentTR.cells[1].innerText = document.forms["mmhide"].sx.value;
currentTR.cells[2].innerText = document.forms["mmhide"].ls.value;
currentTR.cells[3].innerText = document.forms["mmhide"].wy.value;
currentTR.cells[4].innerText = n;
document.getElementById('mmDiv').style.display='none'
}
var currentTR;
function mm(e)
{
var tr = currentTR = searchObjByTagName(e, "TR");
var layer = document.getElementById("mmDiv");
with(layer.style)
{
top = getAbsTop(tr) + tr.offsetHeight;
left = getAbsLeft(tr);
width = tr.offsetWidth;
display = "block";
}
document.forms["mmhide"].sx.value = tr.cells[1].innerText;
document.forms["mmhide"].ls.value = tr.cells[2].innerText;
document.forms["mmhide"].wy.value = tr.cells[3].innerText;
}
//-->
</SCRIPT>
SunShinejia 2004-12-15
  • 打赏
  • 举报
回复
能不能给出一个更完整的代码?谢谢了
qd_jyx 2004-12-15
  • 打赏
  • 举报
回复
document.getElementById("ID").innerHTML = value;(javascript)
qd_jyx 2004-12-15
  • 打赏
  • 举报
回复
使用这中语法
document.getElementById("ID").innerHTML
回填到父窗口中
SunShinejia 2004-12-15
  • 打赏
  • 举报
回复
大家给写一下啊,关键是如何更新父窗口中的数据阿,大家帮忙啊
DARKNESSFALL 2004-12-15
  • 打赏
  • 举报
回复
这个简单di说 怕不是大型软件公司哦
----------
up
ntvov 2004-12-15
  • 打赏
  • 举报
回复
这个简单di说 怕不是大型软件公司哦
SunShinejia 2004-12-15
  • 打赏
  • 举报
回复
大家给写一下啊,关键是如何更新父窗口中的数据阿
dalisong 2004-12-15
  • 打赏
  • 举报
回复
不难
SunShinejia 2004-12-15
  • 打赏
  • 举报
回复
大家帮忙啊
HHH3000 2004-12-15
  • 打赏
  • 举报
回复
呵呵,不难嘛~~~
写个看看
加载更多回复(1)

87,922

社区成员

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

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