2012-05-11 105 views
2

您好我想添加元素,以李的链接
上按我喜欢这个JavaScript的元素添加到L1标签

我已经看到了这个问题太Which "href" value should I use for JavaScript links, "#" or "javascript:void(0)"?

HTML代码元素添加到一个DIV时

<div id="div"> 
<a href="" onclick="add()">add</a> 
</div> 

JavaScript代码

function add(){ 

    var bigDiv = document.getElementById('div'); 
    var input = document.createElement('input'); 
    input.setAttribute('type', 'text'); 
    bigDiv.appendChild(input); 
    } 

和它的作品好
但如果我从DIV更改HTML代码,以利这样

HTML代码

<ul> 
<li id="li"> 
<a href="" onclick="add()">add</a> 
</li> 
</ul> 

的JavaScript

function add(){ 
var bigLi = document.getElementById('li'); 
var input = document.createElement('input'); 
input.setAttribute('type', 'text'); 
bigLi.appendChild(input); 
} 

它不工作
我确保没有语法错误

+0

你说得对,对不起,我关闭它在我的代码了,我的意思是我犯了一个错误只是在写这个问题,但在我的代码,我做到了我要求 –

+0

之前,当我使用利我按下该链接,我可以看到一个输入,但快速删除,我的意思是它添加输入一秒,然后输入消失 –

回答

2

检查您的HTML:

  • 你没有关闭</a>
  • 您的onclick代码不裹""onclick="add()"
  • 你没有抑制链接的默认操作(这是重定向)。尝试adding href="#"以防止它移开并且add return false到该函数的结尾。

    <a href="#" onclick="add()">a</a> 
    
    //AND 
    
    function add(){ 
        ... 
        return false; 
    } 
    
+2

或者,您可以通过返回false来阻止链接上的默认事件。 – kapa

+0

是的人是错误的,因为我没有添加#到我的HREF,谢谢你 –

+0

我会在3分钟后接受答案,但我想知道,它如何与div工作,而不是与李工作:) –