2.html 是弹出的子窗体, 与流程无关

解决方案 »

  1.   

    JS1.html:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <HTML>
    <HEAD>
    <script language="javascript">
    function edit(a){
    alert("111");
    var aa=table1.rows[a].cells[0].innerHTML;
    var b=table1.rows[a].cells[1].innerHTML;
    var c=table1.rows[a].cells[2].innerHTML;
    var d=table1.rows[a].cells[3].innerHTML;
    var e=table1.rows[a].cells[3].innerHTML;
    alert(a);
    var m=window.open("./JS2.html?a="+aa+"&b="+b+"&c="+c+"&d="+d+"&e="+e,"","");
    }
    function func2(){
    alert("???");
    alert(document.getElementsByName("aaa1")[0].value);
    }
    </script>
    <TITLE> New Document </TITLE>
    <META NAME="Generator" CONTENT="EditPlus">
    <META NAME="Author" CONTENT="">
    <META NAME="Keywords" CONTENT="">
    <META NAME="Description" CONTENT="">
    </HEAD><BODY >
    <table border=1 id="table1">
        <caption>一(1)班成绩单</caption>
        <tr>
            <th>学号<th>姓名<th>语文<th>数学<th>英语<th>
        </tr>
        <tr>
            <td>01<td>aaa<td>11<td>22<td>33<td><input type=button value="编辑"   name="edit" onClick="edit(1);"/>
        </tr>
        <tr>
            <td>02<td>bbb<td>44<td>55<td>66<td><input type=button value="编辑" name="edit" onClick="edit(2);"/>
        </tr>
        <tr>
            <td>03<td>ccc<td>77<td>88<td>99<td><input type=button value="编辑"   name="edit" onClick="edit(3);"/>
        </tr>
    <input type=hidden name="aaa1">
    <input type=button value="编辑getHidden"   name="edit1" onClick="func2();"/>
    </table>
    </BODY>
    </HTML>JS2.html:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <HTML>
    <HEAD>
    <script language="javascript">
    function func1(){
    alert("111");
    var c=location.search.toString().split('?').pop();
    var d=c.split("&");
    document.getElementsByName("name")[0].value=d[1].split("=")[1];
    document.getElementsByName("China")[0].value=d[2].split("=")[1];
    document.getElementsByName("Maths")[0].value=d[3].split("=")[1];
    document.getElementsByName("English")[0].value=d[4].split("=")[1];
    }
    function func2(){
    var a=document.getElementsByName("name")[0].value;
    alert(a);
    try{
    window.opener.document.getElementsByName("aaa1")[0].value=a;
    alert(window.opener.document.getElementsByName("aaa1")[0].value);
    alert("right");
    }catch(e){
    alert(e.toString());
    alert("ERR");}
    window.opener.location.reload();window.close();
    }
    </script>
    <TITLE> New Document </TITLE>
    <META NAME="Generator" CONTENT="EditPlus">
    <META NAME="Author" CONTENT="">
    <META NAME="Keywords" CONTENT="">
    <META NAME="Description" CONTENT="">
    </HEAD><BODY onload="func1()">
    <table border=1 >
    <input type="text" type="hidden" name="serialNo"><br/>
    姓名: <input type="text" name="name"><br/>  
    语文: <input type="text" name="China"><br/>
    数学: <input type="text" name="Maths"><br/>
    英文: <input type="text" name="English"><br/>
    <br/>
    <input type="button" value="Save" onclick="func2()">
    </table>
    </BODY>
    </HTML>
      

  2.   

    1到2的值没问题,但2返回1的时候有问题了,
    我打算先付给1的隐藏控件,然后在1中根据隐藏控件的值来改变页面的值,
    但在2中付了,1中取不到;
    下面的供参考:javascript中如何通过被打开的窗体在opener窗体中添加option选项 
    Posted on 2005-05-18 18:09 Tony Qu 阅读(1052) 评论(5)  编辑 收藏 收藏至365Key 所属分类: Java/Javascript  
    如果我们要在一个普通窗体中用javascript动态添加一个option选项,我们会这样写:
    document.form1.list1.options[0]=new Option("A1","a1");假设现在有一个表单名字叫form1,其中有一个list1为列表。以上代码如果在当前窗口调用,会添加一个text="A1", value="a1",等同于代码<option value="a1">A1</option>注:本文中所提到的opener是指打开另一个窗口的窗口,另一个窗口在本文中叫做被打开窗口。既然这种方法可行,我们能否在被打开的窗体中控制opener窗体,并在opener窗体中创建一个option选项呢?理论上的代码如下:
    window.opener.document.all.list1.options[0]=new Option("AA","aa");假设opener窗体中有一个name=list1的列表但实际情况是,如果执行上面的代码,将不会产生任何效果。如果我们分析一下原因会发现,new Option()产生的对象在被打开的窗体中,而非opener窗体中,javascript中规定:只允许窗体访问自己的变量对象。因此正确的方法应该是:
        var newOpt=window.opener.document.createElement("option");
        newOpt.text="AA";
        newOpt.value="aa";
        window.opener.document.all.list1.options.add(newOpt);这样就可以在opener窗体中创建一个option选项。望那位大大修改下
      

  3.   

    mingxuan3000(铭轩)   首先感想您认真的答复, 但不幸的是小的无法运行, 页面2并未如预期的弹出, 请再不是帮我看一下好吗? 拜托了.
      

  4.   

    抱歉是没测试完全, 我把Script中的两个alert("111");  alert(a);去掉后第二张页面就出现了. Why?
      

  5.   

    alert();  
    是调试语句,放着也没影响,弹出后你点ok就可以继续运行
      

  6.   

    http://community.csdn.net/Expert/topic/4545/4545043.xml?temp=.811825
      

  7.   

    我重写了这段代码, 不怕你笑话用了3个多小时.
    JS1.html
    <!ODCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <HTML>
    <HEAD>
        <script language="javascript">
            function choiceNo(a) {
    var i = list['stu{'+ a +'}.id'].value;             
                var n = list['stu{'+ a +'}.name'].value;
                var c = list['stu{'+ a +'}.china'].value;
                var t = list['stu{'+ a +'}.math'].value;
                var e = list['stu{'+ a +'}.english'].value;
    var s = list['stu{'+ a +'}.sNo'].value;
                //var v = i + n + c + t + e + s;   alert(v);
                //var m=window.open('./JS2.html?a='+ i);
                var m = window.open('./JS2.html?i=' + i + '&n=' + n + '&c=' + c + '&t=' + t + '&e=' + e + '&s=' + s);
            }        function func2() {
                alert("???");
                alert(document.getElementsByName("aaa1")[0].value);
            }
        </script>    <TITLE> New Document </TITLE>
        <META NAME="Generator" CONTENT="EditPlus">
        <META NAME="Author" CONTENT="">
        <META NAME="Keywords" CONTENT="">
        <META NAME="Description" CONTENT="">
    </HEAD><BODY>
    <Form name="list" method="post">
    <table border=1 name="table1">
    <caption>一(1)班成绩单</caption>
    <tr>
    <th>学号<th>姓名<th>语文<th>数学<th>英语<th>当前列号
    </tr>
    <tr>
    <td><INPUT class="txtinput"  name="stu{0}.id" id="stu{0}.id" value="00"></td>
    <td><INPUT class="txtinput"  name="stu{0}.name" value="aaa"></td>
    <td><INPUT class="txtinput"  name="stu{0}.china" value="11"></td>
    <td><INPUT class="txtinput"  name="stu{0}.math" value="22"></td>
    <td><INPUT class="txtinput"  name="stu{0}.english" value="33"> 
    <td><INPUT class="txtinput"  name="stu{0}.sNo" id="stu{0}.sNo" value='0'> 
    </td>
    <td>
    <INPUT type=button value="编辑" name="choice" onClick="choiceNo(document.getElementById('stu{0}.sNo').value);">
        </tr>
    <!--<td><INPUT type=button value="编辑" name="choice" onClick="javascript: 
    //MainForm['weeklyReportCustomer.customerName'].value;
    var a = list['stu{0}.sNo'].value;  //alert(a);
    var i = list['stu{'+ a +'}.id'].value;             
                var n = list['stu{'+ a +'}.name'].value;
                var c = list['stu{'+ a +'}.china'].value;
                var t = list['stu{'+ a +'}.math'].value;
                var e = list['stu{'+ a +'}.english'].value;
    var s = list['stu{'+ a +'}.sNo'].value;
                var v = i + n + c + t + e + s;   alert(v);
                //var m=window.open('./JS2.html?a='+ i);
                var m = window.open('./JS2.html?i=' + i + '&n=' + n + '&c=' + c + '&t=' + t + '&e=' + e + '&s=' + s);
    " >
    -->
    <tr>
    <td><INPUT class="txtinput"  name="stu{1}.id" id="stu{1}.id" value="11"></td>
    <td><INPUT class="txtinput"  name="stu{1}.name" value="bbb"></td>
    <td><INPUT class="txtinput"  name="stu{1}.china" value="44"></td>
    <td><INPUT class="txtinput"  name="stu{1}.math" value="55"></td>
    <td><INPUT class="txtinput"  name="stu{1}.english" value="66"> 
    <td><INPUT class="txtinput"  name="stu{1}.sNo" id="stu{1}.sNo" value='1'> 
    </td>
    <td>
    <INPUT type=button value="编辑" name="choice" onClick="choiceNo(document.getElementById('stu{1}.sNo').value);">
        </tr>
    <tr>
    <td><INPUT class="txtinput"  name="stu{2}.id" id="stu{2}.id" value="22"></td>
    <td><INPUT class="txtinput"  name="stu{2}.name" value="ccc"></td>
    <td><INPUT class="txtinput"  name="stu{2}.china" value="77"></td>
    <td><INPUT class="txtinput"  name="stu{2}.math" value="88"></td>
    <td><INPUT class="txtinput"  name="stu{2}.english" value="99"> 
    <td><INPUT class="txtinput"  name="stu{2}.sNo" id="stu{2}.sNo" value='2'> 
    </td>
    <td>
    <INPUT type=button value="编辑" name="choice" onClick="choiceNo(document.getElementById('stu{2}.sNo').value);">
        </tr>

    </table>
    </Form>
    </BODY></HTML>JS2.html
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <HTML>
    <HEAD>
        <script language="javascript">
            function onLoad() {
                var c = location.search.toString().split('?').pop();  //alert('bb  ' + c);            var d = c.split("&");
    document.getElementsByName("id")[0].value = d[0].split("=")[1];
                document.getElementsByName("name")[0].value = d[1].split("=")[1];
                document.getElementsByName("China")[0].value = d[2].split("=")[1];
                document.getElementsByName("Maths")[0].value = d[3].split("=")[1];
                document.getElementsByName("English")[0].value = d[4].split("=")[1];
    document.getElementsByName("sNo")[0].value = d[5].split("=")[1];
            }
            
            function onSubmit() {
    //opener.MainForm['weeklyReport.hopefulCustomers{' + MainForm['serialNo'].value + '}.customerName'].value 
    // = MainForm['weeklyReportCustomer.customerName'].value;
    opener.list['stu{' + info['sNo'].value + '}.id'].value = info['id'].value;
    opener.list['stu{' + info['sNo'].value + '}.name'].value = info['name'].value;
    opener.list['stu{' + info['sNo'].value + '}.china'].value = info['China'].value;
    opener.list['stu{' + info['sNo'].value + '}.math'].value = info['Maths'].value;
    opener.list['stu{' + info['sNo'].value + '}.english'].value = info['English'].value;
    window.close();
            }
        </script>
        <TITLE> New Document </TITLE>
        <META NAME="Generator" CONTENT="EditPlus">
        <META NAME="Author" CONTENT="">
        <META NAME="Keywords" CONTENT="">
        <META NAME="Description" CONTENT="">
    </HEAD><BODY onload="onLoad()">
    <Form name="info" method="post">
    <table border=1>
        <input type="text" type="hidden" name="serialNo"><br/>
     学号: <input type="text" name="id"><br/>
        姓名: <input type="text" name="name"><br/>
        语文: <input type="text" name="China"><br/>
        数学: <input type="text" name="Maths"><br/>
        英文: <input type="text" name="English"><br/>
    返回行号: <input type="text" name="sNo"><br/>
        <br/>
        <input type="button" value="Save" onclick="onSubmit()">
    </table>
    </form>
    </BODY>
    </HTML>
      

  8.   

    很不错,顶一个========================================
    http://peipei3000.jishuqi.com/reg.asp
    http://www.goofar.com/?ID=634664011139
    ========================================