我有一个 php 代码,它显示来自 AZ 的按钮:
<table id="optionAndAnswer" class="optionAndAnswer">
<tr class="answer">
<td>3. Answer</td>
<td>
<?php
$a = range("A","Z");
?>
<table id="answerSection">
<tr>
<?php
$i = 1;
foreach($a as $key => $val){
if($i%7 == 1) echo"<tr><td>";
echo"<input type=\"button\" onclick=\"btnclick(this);\" value=\"$val\" id=\"answer".$val."\" name=\"answer".$val."Name\" class=\"answerBtns answers answerBtnsOff\">";
if($i%7 == 0) echo"</td></tr>";
$i++;
}
?>
...
我要做的是在 jquery 中为上述代码创建一个模板,这样如果用户想要将这些按钮添加到一个块中,那么 jquery 可以用于将这些按钮添加到一个块中,就像模板一样。
下面是jquery代码:
var $this, i=0, $row, $cell;
$('#optionAndAnswer .answers').each(function() {
$this = $(this);
if(i%7 == 0) {
$row = $("<tr/>").appendTo($answer);
$cell = $("<td/>").appendTo($row);
}
var $newBtn = $("<input class='answerBtnsRow answers' type='button' style='display:%s;' onclick='btnclick(this);' />".replace('%s',$this.is(':visible')?'inline-block':'none')).attr('name', $this.attr('name')).attr('value', $this.val()).attr('class', $this.attr('class'));
$newBtn.appendTo($cell);
i++;
});
现在这工作正常,但我有一个问题。如果你看 php 代码,每个按钮都有自己的 id,在我的 jquery 代码中,每个按钮都没有自己的 id。在我的 jquery 代码中,我希望每个按钮与 php 代码中的对应按钮具有相同的 id,唯一的区别是我希望 jquery 按钮 id 以“Row”结尾。例如,如果 php 中按钮 F 的 id 是#answerF
,那么我希望 jquery 中的按钮 F 具有 id #answerFRow
。
我的问题是这可能吗?如果我把它放在 jquery 代码中,这段代码是否能够从 php 代码中检索按钮 ID:
.attr('id', $this.attr('id'))
以及如何在末尾插入“行”一词?