对于jQuery我是一个新手,但是由于另一个stackoverflow成员,我有一些代码允许用户单击一个单选按钮并让它添加一个表格行,其中填充了他们单击的单选按钮链接的文本上。这是jQuery代码:
$('.addRow').click(function() {
var tr = $(
'<tr><td class="cat"></td>'
+ '<td class="sel"></td>'
+ '<td><textarea name="cmo-paragraph[' + count + ']">Click to edit (id '
+ count
+ ')</textarea></td></tr>'
);
$('.mainTable > tbody:last').one().append(tr);
tr.find(".cat").text($(this).closest("li.category").attr("title"));
tr.find(".sel").text($(this).closest("li.select").attr("title"));
count++;
});
以下是电台列表的片段:
<li class="category" value="1" title="Chronic Pain Referral">Chronic Pain Referral
<ul>
<li class="select" title="Chronic referral">
<input type="radio" class="addRow" id="radio1" name="modalities" value="1">
<label for="radio1">Chronic referral</label>
</li>
</ul>
</li>
这将成功地每次在表格中添加一行,其中“类别”和“选择”表格单元格分别在前端填充“慢性疼痛转诊”和“慢性转诊”。
问题是我希望能够以表格的形式提交此信息以保存到数据库中。由于'count'变量,我可以遍历行,因此我可以捕获textarea数据,但是当前不会传递每行的'category'和'select'单元格的值。
我尝试了以下代码更改,但似乎无法正常工作:
$('.addRow').click(function() {
var tr = $(
'<tr><td class="cat"><input type="hidden" class="hiddenCat" name="category[' + count + ']"></td>'
+ '<td class="sel"></td>'
+ '<td><textarea name="paragraph[' + count + ']">Click to edit (id ' + count + ')</textarea></td></tr>'
);
$('.mainTable > tbody:last').one().append(tr);
tr.find(".cat").text($(this).closest("li.category").attr("title"));
tr.find(".hiddenCat").text($(this).closest("li.category").attr("value"));
tr.find(".sel").text($(this).closest("li.select").attr("title"));
count++;
});
答案 0 :(得分:1)
似乎我没有很好地解释我的情况,但我确实想出了我正在寻找的答案。
$('.addRow').click(function() {
var tr = $(
'<tr><td class="cat"></td>'
+ '<td class="sel"></td>'
+ '<td><textarea name="paragraph[' + count + ']">Click to edit (id ' + count + ')</textarea></td><td><input type="text" name="catText[' + count + ']" class="hiddenCat"></td></tr>');
$('.mainTable > tbody:last').one().append(tr);
tr.find(".cat").text($(this).closest("li.category").attr("title"));
tr.find(".hiddenCat").val($(this).closest("li.category").attr("title"));
tr.find(".sel").text($(this).closest("li.select").attr("title"));
count++;
});
我必须添加另一个表格单元格以放入隐藏文本框中,因为它在我最初放置它的单元格中被覆盖。现在,当用户点击“慢性疼痛推荐”选项时,隐藏的文本框会捕获该文本框,以便我可以在表单中传递该信息。