添加onclick属性以使用JavaScript输入

时间:2009-04-25 22:15:38

标签: javascript input onclick

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

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');

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

4 个答案:

答案 0 :(得分:36)

试试这个:

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

史蒂夫

答案 1 :(得分:6)

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

 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);
 }

这更有意义吗?

答案 2 :(得分:2)

我想你可能想逃脱\ r \ n,如果你打算通过这些......

conn.send('$connect\\r\\n')

我不太清楚你的onclick处理程序试图实现什么......

答案 3 :(得分:1)

这是我决定使用jQuery的原因之一:

 $('<input type="submit" value="Join chat" />')
      .click( function() { conn.send('$connect\r\n'); } )
      .appendTo('<div></div>')
      .appendTo('#box');