2010-11-29 6 views
0

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

Проблема:

Поддержка изображений: http://img.photobucket.com/albums/v291/Dark_Jessa/btn_instructions.jpg

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

Если пользователь меняет свое мнение на число, заданное кругом, пользователь может щелкнуть по номеру, и он будет удален от круга.

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

ПРИМЕР: Пользователь хочет, чтобы «Дэвид МОРГАН» был их вторым выбором. Таким образом, пользователь будет щелкнуть по кругу рядом с «David MORGAN». Число «3», которое ранее было в круге, теперь удаляется из круга.

Теперь пользователь нажимает на круг рядом с «Steve PRATT», который имеет номер «2» внутри. Число «3», которое было прикреплено к пользовательскому курсору, теперь заменило номер 2 при щелчке. Теперь пользователь невидимо удерживает номер «3».

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

Если они нажимают кнопку отправки, и все круги не введены, они будут отправлены на страницу, информирующую об этом.

Мне не нужны никакие данные, записанные на постоянной основе, а только записи, записанные во время подтверждения.

Любые идеи? : 3

+4

Возможно, вы забыли упомянуть язык. – 2010-11-29 05:11:47

+0

@user: Да, я согласен с @Ignacio. Как насчет какого-то контекста? Ваши теги действительно бессмысленны. – 2010-11-29 05:15:03

ответ

1

Ранг должен быть не назначен, назначен кандидату или удерживаться «с помощью мыши» для назначения. Кодируйте что-то, что помещает каждый ранг в одно из этих трех состояний.

Например, используйте две (неглобальные) переменные (например, nextRank и nowRank. Значение nextRank означает, что все ранги> = nextRank не назначены.

Когда пользователь нажимает на пустом круге:

  1. если nowRank является положительным целым числом, присвоить кандидату ранг nowRank и установить nowRank до 0
  2. еще назначить кандидат nextRank и прирост nextRank

Когда пользователь нажимает на кружком,

  1. если nowRank является положительное целое число, свопинг ранга кандидата и nowRank (если отличное от нуля)
  2. else set nowRank к ранге кандидата и очистить ранг кандидата.

Поскольку это вопросы, связанные с домашними заданиями, вот вам еще один сценарий: щелкнуть по ранжированному кандидату, не присвоив этот ранг, но не назначит ранее непризнанный ранг. Ранги назначаются только тогда, когда у кандидата нет ранга. Как бы вы это реализовали?

Смежные вопросы