Member 13898220 Ответов: 3

Как я создаю экзамен на веб-странице С Q/a по этому коду?


я использую код , показывающий скрытый ответ ,но когда я повторно использую код с другим ответом, он указывает на прошлый код, мой веб-сайт принимает только JS и HTML
мой код таков
<input type="button" onClick="javascript:ShowHide('HiddenDiv')"value='click here for answer'/>
<div class="mid" id="HiddenDiv" style="display: none;"><font face="Arial" size="+2" color="#306Eff" align="right"> THE HIDDEN TEXTTHE HIDDEN TEXT THE HIDDEN TEXT THE HIDDEN TEXT THE HIDDEN TEXT THE HIDDEN TEXT THE HIDDEN TEXT THE HIDDEN TEXT THE HIDDEN TEXT THE HIDDEN TEXT THE HIDDEN TEXT 
</div>
<script type="text/javascript">// <![CDATA[
function ShowHide(divId)
{
if(document.getElementById(divId).style.display == 'none')
{
document.getElementById(divId).style.display='block';
}
else
{
document.getElementById(divId).style.display = 'none';
}
}
// ]]></script>


Что я уже пробовал:

я пытаюсь перепечатать код много раз на одной и той же странице,но я пытался отредактировать его безрезультатно,так что мне нужна чья-то помощь?

3 Ответов

Рейтинг:
22

F-ES Sitecore

Идентификаторы должны быть уникальными, если вы копируете и проходите мимо этого кода, у вас есть два элемента с идентификатором HiddenDiv, поэтому, когда вы используете getElementById, какой HiddenDiv он должен знать, чтобы вернуться? Изменить идентификатор в каждом из ваших questoins

<input type="button" onClick="javascript:ShowHide('HiddenDiv1')"value='click here for answer'/>
<div class="mid" id="HiddenDiv1" style="display: none;"><font face="Arial" size="+2" color="#306Eff" align="right"> THE HIDDEN TEXTTHE HIDDEN TEXT THE HIDDEN TEXT THE HIDDEN TEXT THE HIDDEN TEXT THE HIDDEN TEXT THE HIDDEN TEXT THE HIDDEN TEXT THE HIDDEN TEXT THE HIDDEN TEXT THE HIDDEN TEXT 
</div>

<input type="button" onClick="javascript:ShowHide('HiddenDiv2')"value='click here for answer'/>
<div class="mid" id="HiddenDiv2" style="display: none;"><font face="Arial" size="+2" color="#306Eff" align="right"> THE HIDDEN TEXTTHE HIDDEN TEXT THE HIDDEN TEXT THE HIDDEN TEXT THE HIDDEN TEXT THE HIDDEN TEXT THE HIDDEN TEXT THE HIDDEN TEXT THE HIDDEN TEXT THE HIDDEN TEXT THE HIDDEN TEXT 
</div>


Рейтинг:
1

Member 13898220

спасибо
но есть ли способ отредактировать код, чтобы сделать это без изменения идентификатора каждого Q ?


F-ES Sitecore

идентификаторы должны быть уникальными, поэтому иметь идентификатор там, если он не уникален, бессмысленно. Однако вы можете использовать класс или атрибут данных, например

данные-ответ="1"

затем используйте querySelector для поиска элемента, а не getElementById

https://developer.mozilla.org/en-US/docs/Web/API/Document/querySelector

Рейтинг:
0

Member 13898220

спасибо вам ооооочень много
Я попробую


Richard Deeming

Если вы хотите ответить на решение, нажмите кнопку "есть вопрос или комментарий?" кнопка под этим решением.

Если вы хотите ответить на комментарий, нажмите кнопку "ответить" рядом с этим комментарием.

НЕ публикуйте свои ответы как "решения".