下面代码中我想要的是,当点击(继续)按钮的时候会在(继续)按钮下面的一行复制上面的标题内容以及各个按钮(复制上面的两行以及继续按钮到下面的行,且是默认值的,就是复制标题没有写,内容也没有写的状态),但我写的js代码貌似不对,一直堵在那里了,还有一个问题是当点击内容里的按钮时(选择textbox或者radio,checkbox时,我希望被选择的那些都在textbox(增加),radio(增加),checkbox(增加) 的下一行)html 代码
<fieldset>
<legend>New info</legend>
<table class="formTable">
<tbody>
<tr>
<th><input type="checkbox">{=_('标题')}</th>
<td colspan="3" class="length"><input type="text" name="title" value="" ></td>
</tr>
<tr> 
<th>{=_('内容')}</th>
<td colspan="3">
Textbox<button class="btn" id="addtext">增加</button>radio button<button class="btn" id="addradio">增加</button>checkbox<button class="btn" id="addcheckbox">增加</button>
</td>
</tr>
</tbody>
</table>
<div class="edit">
<button class="btn" id="add">继续</button>
</div>
</fieldset>js代码
$('#addtext').click(function(){
var td_last = $('.formTable tbody tr:last td');
$(td_last).after('<textarea name="" rows="5"></textarea><br>');
$('#addradio').css("visible","hidden");
$('#addcheckbox').css("visible","hidden");
});

$('#addradio').click(function(){
var td_last = $('.formTable tbody tr:last td');
$(td_last).after('<input type="radio" name="radio" value="radio">{}');
});

$('#addcheckbox').click(function(){
var td_last = $('.formTable tbody tr:last td');
$(td_last).after('<input type="checkbox" name="checkbox" value="checkbox">{}');
});

$('#add').click(function(){
var tr_last = $('.formTable tbody tr:last');
$(tr_last).after($('.formTable tbody tr').eq(2).clone()).after($('.formTable tbody tr').eq(1).clone());
$('.formTable tbody tr').eq(1).find(':text[name="title"]').val("");
$('.formTable tbody tr').eq(2).find(':radio[name="radio"]').attr("checked",false);
$('.formTable tbody tr').eq(2).find(':checkbox[name="checkbox"]').attr("checked",false);
//del();
});

function del(){
$('#delete').click(function(){
if($('.formTable tbody tr').length==1)
{
return alert('삭제하실수 없습니다.');
}
$(this).closest('tr td').remove();
});
}

解决方案 »

  1.   

    按照如下进行了修改,现在发现一个新的问题,当点击继续按钮的时候,生成一个新的,但之前的在textarea里写的内容全部没了,text里的内容还在$('#addtext').click(function(){
    var tr_last = $('.formTable tbody tr td').eq(1);
    $(tr_last).append('<br/><textarea name="textarea" rows="5"></textarea><br>');
    $('#addradio').css("visible","hidden");
    $('#addcheckbox').css("visible","hidden");
    });$('#addradio').click(function(){
    var tr_last = $('.formTable tbody tr td').eq(1);
    $(tr_last).append('<br/><input type="radio" name="radio" value="radio">{}');
    });$('#addcheckbox').click(function(){
    var tr_last = $('.formTable tbody tr td').eq(1);
    $(tr_last).append('<br/><input type="checkbox" name="checkbox" value="checkbox">{}');
    });$('#add').click(function(){
    var tr_last = $('.formTable tbody tr:last');
    $(tr_last).after($('.formTable tbody tr').eq(1).clone()).after($('.formTable tbody tr').eq(0).clone());
    $('.formTable tbody tr').eq(0).find(':text[name="title"]').val("");
    $('.formTable tbody tr').eq(1).find('textarea[name="textarea"]').remove();
    $('.formTable tbody tr').eq(1).find(':radio[name="radio"]').remove();
    $('.formTable tbody tr').eq(1).find(':checkbox[name="checkbox"]').remove();
    //del();
    });