2017-10-05 101 views
-1

我需要创建一个空表单并使用按钮来添加尽可能多的文本框。每次点击创建一个文本框。我使用Electron框架。会有人有想法吗?我如何在每次点击时创建一个文本框

+0

你尝试过这么远吗? – Leo

+0

我不知道,我可以用PHP来做,但Electron不支持我认为的PHP。 对不起,我的英语 –

回答

-1

你应该用javascript来做。你可以使用像Jquery这样的库来做到这一点。我会注意到在这里给出代码,但是如果你有问题,展示你的工作,它将很高兴帮助你调试你的代码。

有很多方法可以做到这一点。

一种方法: 您创建一个按钮。你添加一个事件监听器(监听点击事件)。然后你给这个事件监听器一个函数。这个函数负责添加文本框。你可以看看jQuery的附加功能来做到这一点。或者实施你自己的。

希望这对你有所帮助,如有不明之处请留言,我会加入更多解释。

+0

非常有帮助,我会做的;感谢您的评论 –

+0

为什么downvote? – rm4

+0

对不起,我不明白如何使用它,我尝试一个很好的投票,但不工作 –

0

您可以轻松地元素添加到DOM:

function createTextBox() { 
    var input = document.createElement('input'); 
    input.type = 'text'; 
    return input; 
} 

var form = document.getElementById('myForm'); 
document.getElementById('addText').addEventListener('click', function(e) { 
    form.appendChild(createTextBox()); 
}); 
+0

有帮助,谢谢 –

0

感谢所有您的意见,我终于像这样做,它的工作原理

// fcontion pour créer un label 
function createLabel ($for, $texte) { 
    var label = document.createElement('label'); 
    label.setAttribute('for', $for); 
    var texte = document.createTextNode('Légende'); 
    label.appendChild(texte); 
    return label; 
} 

// fonction pour une zone de texte 
function createInput ($type, $classe, $id) { 
    var input = document.createElement('input'); 
    input.setAttribute('type', $type); 
    input.setAttribute('class', $classe); 
    input.setAttribute('id', $id); 
    return input; 
} 

// Générer une zone de texte 
function createTextBox() { 
    var div = document.createElement('div'); 
    div.setAttribute('class', 'form-group'); 
    div.appendChild(createLabel('legende', 'Légende')); 
    div.appendChild(createInput('text', 'form-control', 'legende')); 

    var form = document.getElementById('myForm'); 
    form.appendChild(div); 
    document.getElementById('closeModal').click(); // fermer le popup 
} 
相关问题