Я пытаюсь построить простой переключатель в форме. Это работает только в одну сторону. Что мне здесь не хватает, что мешает работе этого кода?

HTML

<div id="SlideJoinDiv" align="right" style="background-image: url(img/buttons/SchuifNederlandsBG.png">
<img width="87px" height="53px" src="img/buttons/SchuifjeKnop.png" id="SlideJoin" />
</div>

jQuery

$(document).ready(function () {
  $('#SlideJoinDiv').click(function () {
    var waardeStart = 'gast';
    var waardeType = $('#TypeAccount').attr('value');
    if (waardeType = waardeStart) {
      $('#SlideJoinDiv').attr('align', 'left');
      $('#TypeAccount').attr('value', 'artist');
    } else {
      $('#SlideJoinDiv').attr('align', 'right');
      $('#TypeAccount').attr('value', 'gast');
    }
  });
-2
M.V. Baks 25 Янв 2013 в 01:35

4 ответа

Лучший ответ
waardeType = waardeStart 

Должно быть:

waardeType == waardeStart 

Прямо сейчас вы назначаете, вам нужно сравнивать.

4
Dave Newton 24 Янв 2013 в 21:38

Проблема в if

if (waardeType = waardeStart){

Должно быть:

if (waardeType == waardeStart){

Объяснение: один знак равенства (=) - это присвоение, два знака равенства (==) - сравнение.

4
petrkotek 24 Янв 2013 в 21:38

Должно быть "==" вместо "=" Сравнение с назначением

Кроме того, небольшие опечатки в вашем определении стиля для фонового изображения.

style="background-image: url('img/buttons/SchuifNederlandsBG.png');"

Вместо того

style="background-image: url(img/buttons/SchuifNederlandsBG.png"
2
NodeNodeNode 24 Янв 2013 в 21:41
if (waardeType = waardeStart) 

Неправильно.

Использовать

if (waardeType == waardeStart)
2
GeorgeVremescu 24 Янв 2013 в 21:38