OnClick Увольнение на странице загрузки? - PullRequest
0 голосов
/ 05 июля 2011

Мои знания JavaScript невелики, поэтому я не могу понять это после некоторого значительного поиска в Google (и поиска здесь, конечно), поэтому я надеюсь, что это поможет мне понять принцип того, что я делаю неправильно, так как а также предоставление решения.

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

КРОМЕ .. он также отключается при каждой загрузке страницы. Это означает, что когда вы открываете страницу, она переключает вас на противоположное тому, что было раньше.

Вот код, который он запускает:

<form name="checkHomePage">
 <?php 
    echo "<input ";
    if (checkHomePage($_REQUEST['refnum']) == 1) {echo " checked='checked' ";}
    echo " onClick='<?php echo ".toggleHomePage($_REQUEST['refnum']).";?>'";
    echo " type='checkbox'>Show On My Home Page</input>";
 ?>
</form>

Насколько я понимаю, я не могу понять, почему onClick запускается при загрузке страницы. В функциях PHP нет JS, они также возвращают правильные значения.

Другие точки данных: мне разрешено использовать только минимальный JavaScript в этом проекте, например, триггеры OnClick. Кроме того, мы используем только IE8 и 9.

Заранее спасибо.

1 Ответ

2 голосов
/ 05 июля 2011

Проблема в том, что вы отправляете браузер ваш <?php echo код. Используйте это вместо:

<form name="checkHomePage">
 <?php 
    echo "<input ";
    if (checkHomePage($_REQUEST['refnum']) == 1) {echo " checked='checked' ";}
    echo " onClick='toggleHomePage(".$_REQUEST['refnum'].")'";
    echo " type='checkbox'>Show On My Home Page</input>";
 ?>
</form>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...