Я пытаюсь создать функцию переключения в Javascript для флажка HTML, где, если флажок установлен / снят, javascript обнаруживает это с помощью оператора if и выполняет соответствующее действие (в этом случае добавление / удаление параметра URL и обновление страницы с новым набором результатов)
Сейчас я просто пытаюсь проверить функциональность переключения javascript с помощью всплывающих предупреждений, когда флажок установлен / снят.
Вот код JavaScript:
<script type="text/javascript" language="javascript">
function filterToggle(attribName)
{
var elementII = document.getElementById(attribName);
if(elementII.checkedTag == "unchecked"){
elementII.checkedTag = "checked";
alert("checked");
}
else {
elementII.checkedTag = "unchecked";
alert("unchecked");
}
}
</script>
И вот где флажки создаются несколько раз внутри цикла php foreach:
$BODY .= sprintf("<input type=\"checkbox\" onclick=\"filterToggle('%s')\" name=\"%s\" value=\"%s\" id=\"%s\" checkedTag=\"unchecked\"/> %s ",
$attribName, $attribName, $attribClass, $attribName, $attribName, $attribName);
Таким образом, идея заключается в том, что ящики должны загружаться на страницу без флажка (что они есть), и когда я проверяю их, оповещение должно быть «проверено», а когда я снимаю отметку, а оповещение - «не проверено». Все здесь работает отлично, за исключением того факта, что когда я сейчас отмечаю флажки, они говорят «не проверено», а когда я снимаю флажок, они говорят «проверено». Таким образом, кажется, что javascript изменяет значение атрибута checkedTag в флажках и отвечает соответственно: , но , он не признает тот факт, что значение флажка изначально установлено как «unchecked», так что вместо установив его на непроверенный и выдавая предупреждение «непроверенный» при первом нажатии, как это в настоящее время, по-видимому, должно быть установлено на «проверено» и оповещение «проверено».
Есть мысли здесь? Я не могу понять, почему он не распознает это начальное значение - пробовал двойные кавычки вокруг значения selectedTag, одинарные кавычки, без кавычек ... тот же результат.
Вот пример кода вывода в JSFiddle - http://jsfiddle.net/intenex/s45JC/3/, с 3 флажками, отображающими ошибку, описанную выше.
Спасибо!