Javascript 如何将元素附加到动态生成的元素
我有几个表单,一个接一个的克隆取决于用户输入。在每个表单中,我都有按钮添加一行输入:Javascript 如何将元素附加到动态生成的元素,javascript,jquery,forms,Javascript,Jquery,Forms,我有几个表单,一个接一个的克隆取决于用户输入。在每个表单中,我都有按钮添加一行输入: <h4>3.3.5 Input Parameters</h4> <table id="input_param" data-role="table" class="ui-responsive table-stroke"> <thead> <tr> <th data-priority="1">Pa
<h4>3.3.5 Input Parameters</h4>
<table id="input_param" data-role="table" class="ui-responsive table-stroke">
<thead>
<tr>
<th data-priority="1">Parameter</th>
<th data-priority="2">Data Type</th>
<th data-priority="3">Required</th>
<th data-priority="4">Brief description</th>
<th data-priority="5">Location in Request</th>
</tr>
</thead>
<tbody></tbody>
</table>
<input type="button" id="add_input_param" value="+ Add Input Parameter" data-inline="true" /><br />
因为第一个之后的一个我知道我必须使用.on()
评论区是我无法让它工作的部分。我想将maincontent附加到#input_param(它是一个表)中,但由于它是动态生成的,我如何修改这一行代码以便它可以使用它
主要内容如下:
function loadParam(IO, form_number, counter) {
var id = IO + form_number + '-' + counter;
var maincontent = '<tr>';
maincontent += '<th><input type="text" name="param' + id + '" id="param' + id + '" value="" /></th>';
maincontent += '<td><input type="text" name="data_type' + id + '" id="data_type' + id + '" /></td>';
maincontent += '<td>';
maincontent += '<select id="required" name="req' + id + '" id="req' + id + '"class="form-alpha">';
maincontent += '<option value="Mandatory" >Mandatory</option>';
maincontent += '<option value="Optional" >Optional</option>';
maincontent += '<option value="Conditional" >Conditional</option>';
maincontent += '</select>';
maincontent += '</td>';
maincontent += '<td><textarea name="des' + id + '" id="des' + id + '" ></textarea></td>';
maincontent += '<td>';
maincontent += '<select name="location' + id + '" id="location' + id + '" class="form-alpha">';
maincontent += '<option value="Header" >Header</option>';
maincontent += '<option value="Body" >Body</option>';
maincontent += '<option value="Query_param" >Query Parameter</option>';
maincontent += '<option value="Resource_uri" >Resource URI</option>';
maincontent += '</select>';
maincontent += '</td>';
maincontent += '</tr>';
return maincontent;
}
函数loadParam(IO、表单号、计数器){
变量id=IO+表格编号+'-'+计数器;
var maincontent='';
主内容+='';
主内容+='';
主内容+='';
主内容+='';
maincontent+=‘强制’;
maincontent+=‘可选’;
maincontent+=‘有条件’;
主内容+='';
主内容+='';
主内容+='';
主内容+='';
主内容+='';
maincontent+='标题';
maincontent+=‘Body’;
maincontent+=“查询参数”;
maincontent+=‘资源URI’;
主内容+='';
主内容+='';
主内容+='';
返回主要内容;
}
你不能像以前那样做吗
$('#input_param').append(maincontent).trigger("create");
另外,由于您有一个thead
和tbody
,因此直接针对正确的元素(thead或tbody)更安全
$('#input_param > tbody').append(...);
看看你的模板谢谢!!!当我在它里面加上tbody时,它实际上起作用了。但我现在有另一个问题。。。因为克隆表单的所有id名称仍然相同。它实际上以每种形式填充表中的行。。。!我想至少我现在可以继续了:)再次谢谢你!
$('#input_param').append(maincontent).trigger("create");
$('#input_param > tbody').append(...);