如何让用户在Rails/Javascript中向页面添加额外内容

How to let users add additional content to a page in Rails/Javascript

本文关键字:额外内容 添加 Javascript 用户 Rails      更新时间:2023-09-26

基本上,我正在编写一个应用程序,用户可以在其中列出他们过去的雇主和各自的职位,并希望有一个按钮可以点击添加另一个条目。我已经设置了后端,但我希望他们从一个条目开始,例如:

员工1:(信息在这里)

(添加另一个雇主按钮)

单击该按钮后,页面现在看起来如下:

员工1:(信息…)

Employer2:(提交信息的表格,提交后这个条目看起来就像上面的那个)

(添加另一个雇主按钮)

等等。我知道必须有一个javascript插件才能做到这一点,但我不知道它叫什么,因此一直找不到。有什么想法吗?

我会自己写。

<script type="text/javascript">
var form=document.getElementById('myform');
var employers=document.getElementById('employers');
function addEmployer(currID) {
    var employer = currID;
    var nextEmployer = employer+1;
    var employerclone=document.getElementById('employer[employer]').cloneNode(true);
    employerclone.setAttribute('id', 'employer[(nextEmployer)]');
    employers.appendChild(employerclone);
}
</script>

然后是形式:

<form id="myform">
<div id="employers">
    <div id="employer[0]">
        Employer Name:<input type="text" id="employerName[0]">
        Employer Details:<input type="textarea" id="employerDeets[0]">
        <input type="button" value="Add Employer" onclick="addEmployer(this.id)" id="0">
    </div>
</div>
<input type="submit" value="submit">
</form>

这绝不是经过测试的,只是一个涂鸦,而是我处理它的方式。你还必须设置输入的id,这样表单提交后就不会与处理混淆。