используя "onclick" с переключателем в appengine - PullRequest
10 голосов
/ 02 декабря 2008

Вот фрагмент кода. , .

<form name="FinalAccept" method="get"><br>

<input type="radio" name="YesNo" value="Yes" onclick="/accept"> Yes<br>

<input type="radio" name="YesNo" value="No" onclick="/accept"> No<br>

Ясно, что я пытаюсь вызвать процедуру, связанную с / принять, когда пользователь нажимает переключатель.

Я знаю, что подпрограмма работает, потому что я вызываю ту же подпрограмму из другого места в программе.

Я пытаюсь запустить его локально, используя Google Appserver. Я что-то упускаю?

Спасибо

Ответы [ 3 ]

14 голосов
/ 02 декабря 2008

Если вы хотите отправить всю форму, когда пользователь нажимает переключатель, попробуйте следующее:

<form name="FinalAccept" method="get" action="accept"><br>
<input type="radio" name="YesNo" value="Yes" onclick="this.form.submit();"> Yes<br>
<input type="radio" name="YesNo" value="No" onclick="this.form.submit();"> No<br>
</form>

Кроме того, если вы хотите сделать свой пользовательский интерфейс немного более удобным для пользователя, измените его на:

<form name="FinalAccept" method="get" action="accept"><br>
<input id="rYes" type="radio" name="YesNo" value="Yes" onclick="this.form.submit();">
<label for="rYes">Yes</label><br>
<input id="rNo" type="radio" name="YesNo" value="No" onclick="this.form.submit();">
<label for="rNo">No</label><br>
</form>

Это сделает текст «Да» и «Нет» в качестве интерактивных ярлыков для их переключателей. Пользователь может щелкнуть метку, чтобы выбрать переключатель.

2 голосов
/ 02 декабря 2008

Ваше событие onClick ожидает некоторый код JavaScript:

onclick="SomeJavaScriptCode"

Подробнее здесь: http://www.w3schools.com/jsref/jsref_onClick.asp

Итак, вы должны делать что-то вроде этого:

onClick="myfunction('my value');"

РЕДАКТИРОВАТЬ: похоже, что вы хотите перейти на URL, когда пользователь нажимает либо «да» или «нет». Чтобы сделать это, вы можете попробовать этот небольшой код JavaScript:

onClick="location.href='http://www.example.com/accept';"
onClick="location.href='http://www.example.com/decline';"

Теперь, если вы хотите отправить форму автоматически, когда пользователь нажимает «да» или «нет», то делайте то, что предлагает Бенри:

onClick="this.form.submit();"

Надеюсь, это поможет.

1 голос
/ 02 декабря 2008

Вы, вероятно, думаете о действии = для элемента формы. OnClick просто запустит функцию JavaScript.

...