我有一個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++;
}
?>
...
現在這些按鈕應該打開和關閉使用「.answerBtnsOn」和「.answerBtnsOff」
我遇到的問題是它會突出顯示應該打開的按鈕,但不會使其他按鈕不亮(關閉)。所以如果按鈕B被突出顯示,但現在答案是A和C,它應該只打開按鈕A和C,所有其他按鈕都應該關閉,但這不會發生,因爲按鈕B仍然與A和C一起打開
所以我的問題是,如何關閉應關閉的按鈕。此刻它正在打開正確的按鈕,但未關閉其他按鈕。
下面是當前的代碼:
var answers = $.map(btn.split(''),function(chr){ return "#answer"+chr; }).join(', ');
$(answers).removeClass('answerBtnsOn').addClass('answerBtnsOff');
$(answers).addClass("answerBtnsOn").siblings().addClass('answerBtnsOff');
UPDATE:
這裏是一個DEMO所以你可以看到發生了什麼,皮斯遵循以使用演示以下步驟:
- 步驟1:在左側會看到一個綠色加號按鈕,點擊此按鈕上的 ,將出現一個模態窗口。
- 步驟2:在模態窗口的搜索欄中,您會看到一個搜索欄 ,輸入「AAA」並提交。
- 第3步:您會看到一堆結果顯示爲您搜索。在 的第一行中,您將看到一個「答案」列,該列在該第一行中的 列下面聲明「B」。點擊「添加」按鈕添加 行。
- 第4步:現在您會看到右側的按鈕「B」突出顯示爲 。
這是在此刻很好,但現在的問題來了:
- 第5步:在該行中再次單擊綠色加號按鈕,並執行 相同的搜索。
- 第6步:這次添加「答案」爲「A C」的第二行。現在您可以看到 按鈕A和C突出顯示,但仍然突出顯示按鈕B ,應將其關閉。
所以這是我的問題,在這個例子中爲什麼不按鈕「B」關閉,因爲它現在不是答案?
我不明白您提供的代碼段中的最後兩行。您將從選定的答案中刪除該課程,然後爲所選答案添加off類,然後將on類添加到所有這些答案,並將off添加到不是所選答案的答案。這意味着選擇的答案既有上課也有下課,而其他人都有下課。我希望它會與你所看到的相反,取決於CSS當然。 – 2012-07-09 19:18:08
如果你可以提供一個更好的jsfiddle,但它看起來像你沒有實際刪除類「answerBtnsOff」 – 2012-07-09 19:18:17
@KevinB我試圖說刪除所有的類,並添加所有關閉的類到所有按鈕,然後添加到類只有選中的按鈕和關閉類別到其他按鈕。所以我們可以說有3個按鈕,A B C和B按鈕被選中,那麼它應該是按鈕A是關閉類,按鈕B在類上,按鈕C關閉類。然後,如果我想更改答案,那麼所有按鈕都會變成課外,然後只將類添加到所選按鈕中 – user1490145 2012-07-09 19:45:29