gpt4 book ai didi

php - JavaScript 克隆使用文本区域值创建副本

转载 作者:行者123 更新时间:2023-11-30 13:11:01 26 4
gpt4 key购买 nike

以下是我用于克隆的 JavaScript 代码:

function addCloneRow(obj) {                                
if(obj) {
var tBody = obj.parentNode.parentNode.parentNode;
var trTable = tBody.getElementsByTagName("tr")[tBody.getElementsByTagName("tr").length-1];
var trClone = trTable.cloneNode(true);
if(trClone) {
var txt = trClone.getElementsByTagName("input");
var srno = trClone.getElementsByTagName("label");
var dd = trClone.getElementsByTagName("select");

for(var i=0; i<dd.length; i++) {
dd[i].options[0].selected=true;
var nm = dd[i].name;
var nNm = nm.substring((nm.indexOf("_")+1),nm.indexOf("["));
dd[i].name = nNm+"[]";
}
for(var j=0; j<txt.length; j++) {
var nm = txt[j].name;
var nNm = nm.substring((nm.indexOf("_")+1),nm.indexOf("["));
txt[j].name = nNm+"[]";
if(txt[j].type == "hidden"){
txt[j].value = "0";
}else if(txt[j].type == "text") {
txt[j].value = "";
}else if(txt[j].type == "checkbox") {
txt[j].checked = false;
}
}
tBody.insertBefore(trClone, tBody.getElementsByTagName("tr")[tBody.getElementsByTagName("tr").length]);
}
}
}

下面是我的 HTML 代码:

<table id="step_details" style=" padding: 0px; margin: 5px; border-color: #fff;" align="center" frame="box" cellspacing="15">
<tr>
<th width="45%">Step details</th>
<th>Expected Results</th>
<th width="25">Execution</th>
<th><img src="gui/themes/default/images/ico_add.gif" onclick="addCloneRow(this);"/></th>
</tr>
{foreach from=$gui->viewSteps item=step_info }
<tr>
<input type="hidden" name="existing_id[]" value="{$step_info->id}">
<td><textArea id="step_details" name="step_details[]">{$step_info->actions|strip_tags|trim}</textArea></td>
<td><textArea id="expected_results" name="expected_results[]">{$step_info->expected_results|strip_tags|trim}</textArea></td>
<td style="vertical-align: top;">

<select onchange="content_modified = true" name="etype[]">
<option {if $step_info->execution_type eq 1 }selected="selected" {/if} value="1" label="Manual">Manual</option>
<option {if $step_info->execution_type eq 2 } selected="selected" {/if} value="2" label="Automated">Automated</option>
</select>
</td>
<td style="vertical-align: top;"><img src="gui/themes/default/images/ico_del.gif" onclick="removeCloneRow(this);"/></td>
</tr>
{/foreach}
{if $smarty.post.doAction neq "edit"}
<tr>
<td><textArea name="step_details[]"></textArea></td>
<td><textArea name="expected_results[]"></textArea></td>
<td style="vertical-align: top;">
<select onchange="content_modified = true" name="etype[]">
<option selected="selected" value="1" label="Manual">Manual</option>
<option value="2" label="Automated">Automated</option>
</select>
</td>
<td style="vertical-align: top;"><img src="gui/themes/default/images/ico_del.gif" onclick="removeCloneRow(this);"/></td>
</tr>
{/if}
</table>

克隆工作正常,但问题是如果我在编辑页面然后它用 textarea 值克隆它而不是我想要 textarea 中的空白值。如何在 textarea 中克隆后动态添加空白值。

谢谢

最佳答案

在下面一行之后:

var dd   = trClone.getElementsByTagName("select");

输入这些行:

var textarea   = trClone.getElementsByTagName("textarea");
for(var i=0; i<textarea.length; i++) {
textarea[i].value = '';
}

希望这对您有所帮助。

关于php - JavaScript 克隆使用文本区域值创建副本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13909290/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com