javascript - 如何在每次单击按钮时在 javascript 中附加新元素

标签 javascript

当我单击链接时,JS 会向页面添加一个新的文件标签,但每次它都会重新加载所有文件标签。我需要的是当我点击一个链接时,它应该附加一个文件标签而不重新加载之前的文件标签。

如果有人对此有想法,请提出建议。

以下是我的代码。

var intTextBox = 0; 
function addElement() 
{
    intTextBox = intTextBox + 1;
    var contentID = document.getElementById('content');
    contentID.innerHTML = "";
    var howManyTextBoxes = intTextBox;  
    for ( var i = 0; i < howManyTextBoxes; i++) 
    {               
        var newTBDiv = document.createElement('div');           
        newTBDiv.setAttribute('id', 'strText' + intTextBox);
        newTBDiv.innerHTML += "<input type=file name='fileUpload' size='40'/>";                             
        contentID.appendChild(newTBDiv);                        
}

这就是我调用 JS 函数的方式。

    <a href="javascript:addElement();">Attach more files</a>

最佳答案

您应该从该函数返回 false,否则链接会重新加载页面:

function addElement() {
    intTextBox = intTextBox + 1;

    var contentID = document.getElementById('content');
    contentID.innerHTML = "";
    var howManyTextBoxes = intTextBox;  
    for ( var i = 0; i < howManyTextBoxes; i++) {               
    var newTBDiv = document.createElement('div');           
    newTBDiv.setAttribute('id', 'strText' + intTextBox);
    newTBDiv.innerHTML += "<input type=file name='fileUpload' size='40'/>";                             contentID.appendChild(newTBDiv);                            
    return false;
}

关于javascript - 如何在每次单击按钮时在 javascript 中附加新元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16230717/

相关文章:

javascript - Sequelize : Modify output of date timestamp using Getters

javascript - 从表格单元格中获取变量

javascript - 如何避免在JSON.parse()方法中解析 "\"

javascript - 在 IOS 上单击按钮时,iframe 不滚动

javascript - 客户端和服务器端编程有什么区别?

javascript - 使用html css垂直排列4个div

javascript - 在不单击任何按钮的情况下从 Web 使用 Flask 运行 python 脚本

javascript - 如何检测表单提交超时并重新提交?

javascript - 单击动画后如何在不影响样式的情况下将 div 堆栈放在页面底部

Javascript:将变量定义为调用相同函数的匿名函数