321Hello 2022-06-30 13:55 采纳率: 33.3%
浏览 69
已结题

js点击选择跳出新页面,有香蕉,苹果,葡萄三种水果可选,点击一种水果后,将水果名称填入表格,然后自动关闭新页面

img

功能描述:点击选择跳出新页面,有香蕉,苹果,葡萄三种水果可选,点击一种水果后,将水果名称填入表格,然后自动关闭新页面

主要问题:点击水果无法填入表格也无法自动关闭弹出的新页面

主页面:

<!DOCTYPE HTML>
<html>
<head>
    <meta charset="utf-8" />
 <title></title>
 <script language="JavaScript">
    function openwindow() {
      window.open("xuanzhe.html","","width=400,height=400,top=100,left=200,toolbar=no,scrollbars=yes, resizable=yes,location=no,menubar=no");
}
 </script>
</head>
<body>
    <table width="353" border="0">
    <tr>
    <td>喜欢的水果</td>
    <td><input type="text" id="xuan"/> 
      <INPUT type="button" name="regButton" value=" 选择 " onClick="openwindow()"></td>
  </tr>
    </table>

</body>
</html>

弹出的页面:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<script type="text/javascript">
function choose(this)  
{  
//对子窗口本身操作,使用self对象,对父窗口操作使用opener对象,这是关键  
  
    var parent=window.opener.document.getElementById("xuan");  
    parent.value=obj.innerHTML;  
    self.close();  
    window.opener.focus();  
}  
</script>  
</head>
    <body>
        <table width="300" border="0" cellspacing="0" cellpadding="0">
            <tr>
                <td><a href="#" onclick="choose(this)">香蕉</a></td>
             </tr>
              <tr>
                <td><a href="#" onclick="choose(this)">苹果</a></td>
              </tr>
              <tr>
                <td><a href="#" onclick="choose(this)">葡萄</a></td>
              </tr>
        </table>
    </body>
</html>


  • 写回答

1条回答 默认 最新

  • 光年之内 2022-06-30 14:07
    关注

    choose方法中参数名称不能叫做this,改为obj就可以,因为下方parent.value=obj.innerHTML;接受的是obj.innerHTML

    
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="utf-8" />
    <title></title>
    <script type="text/javascript">
    function choose(obj)  
    {  
    //对子窗口本身操作,使用self对象,对父窗口操作使用opener对象,这是关键  
      
        var parent=window.opener.document.getElementById("xuan");  
        parent.value=obj.innerHTML;  
        self.close();  
        window.opener.focus();  
    }  
    </script>  
    </head>
        <body>
            <table width="300" border="0" cellspacing="0" cellpadding="0">
                <tr>
                    <td><a href="#" onclick="choose(this)">香蕉</a></td>
                 </tr>
                  <tr>
                    <td><a href="#" onclick="choose(this)">苹果</a></td>
                  </tr>
                  <tr>
                    <td><a href="#" onclick="choose(this)">葡萄</a></td>
                  </tr>
            </table>
        </body>
    </html>
     
     
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 7月8日
  • 已采纳回答 6月30日
  • 创建了问题 6月30日

悬赏问题

  • ¥20 完全没有学习过GAN,看了CSDN的一篇文章,里面有代码但是完全不知道如何操作
  • ¥15 使用ue5插件narrative时如何切换关卡也保存叙事任务记录
  • ¥20 软件测试决策法疑问求解答
  • ¥15 win11 23H2删除推荐的项目,支持注册表等
  • ¥15 matlab 用yalmip搭建模型,cplex求解,线性化处理的方法
  • ¥15 qt6.6.3 基于百度云的语音识别 不会改
  • ¥15 关于#目标检测#的问题:大概就是类似后台自动检测某下架商品的库存,在他监测到该商品上架并且可以购买的瞬间点击立即购买下单
  • ¥15 神经网络怎么把隐含层变量融合到损失函数中?
  • ¥15 lingo18勾选global solver求解使用的算法
  • ¥15 全部备份安卓app数据包括密码,可以复制到另一手机上运行