当前位置:  开发笔记 > 编程语言 > 正文

添加onclick属性以使用JavaScript输入

如何解决《添加onclick属性以使用JavaScript输入》经验,为你挑选了2个好方法。

我正在其中一个事件中创建用户输入:

var throwConnectBox = function() {
    chat_box = document.getElementById('box');
    div = window.parent.document.createElement('div');
    input = window.parent.document.createElement('input');
    input.type = "submit";
    input.value = "Join chat";
    input.onclick = "conn.send('$connect\r\n');";
    div.appendChild(input);
    chat_box.appendChild(div);
}

...但结果输入没有onclick属性.我试着用

    input.onclick = conn.send('$connect\r\n');

......相反,但也没有工作.我究竟做错了什么?



1> Steve Harris..:

试试这个:

 input.onclick = function() { conn.send('$connect\r\n'); };

史蒂夫


有趣.我很快尝试使用"onclick"处理程序创建一个元素并将其添加到DOM中,并且它没有显示在HTML部分中(但是onclick处理程序在那里并且正在工作).尝试向输入添加ID属性(假设ID为"test"),并在Firebug的控制台中执行以下代码(不带单引号):'document.getElementById("test").onclick'.你回来了吗?

2> Billy Back B..:

这里有一条线存在问题; 我已经为你纠正了它:

 var throwConnectBox = function() {
     chat_box = document.getElementById('box');
     div = window.parent.document.createElement('div');
     input = window.parent.document.createElement('input');
     input.type = "submit";
     input.value = "Join chat";
     /* this line is incorrect, surely you don't want to create a string? */
     // input.onclick = "conn.send('$connect\r\n');";?
     input.onclick = function() { 
         conn.send('$connect\r\n'); 
     };
     div.appendChild(input);
     chat_box.appendChild(div);
 }

那更有意义吗?

推荐阅读
coco2冰冰
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有