Хобрук: Ваш путь к мастерству в программировании

Эхо PHP на основе выбора формы jQuery .post AJAX

Я использую jQuery для отправки запроса AJAX после того, как выбор сделан в форме, и я хочу, чтобы эхо возвращало разные вещи в div в зависимости от того, какой выбор сделан. Вот моя форма:

<form name="myform" id="myform" method="post" action="#">
   <select name="myselect" id="myselect">
      <option>-- Make a selection --</option>
      <option value="1">Option 1</option>
      <option value="2">Option 2</option>           
   </select>
</form>

Вот javascript ранее на странице:

$(document).ready(function() {
   $('#myselect').change(function() {
      $(this).parents("form").submit();
   });
   $('#myform').submit(function() { 
      $.post(
         'myscript.php',
         $(this).serialize(),
         function(data){
            $("#mydiv").html(data)
         }
      );
      return false;   
   });
});

А вот myscript.php:

<?php
   if ($_POST['myselect'] = "1") {
      echo "Div contents 1";
   }
   if ($_POST['myselect'] = "2") {
      echo "Div contents 2";
   }
?>

Моя проблема заключается в следующем: «Содержимое Div 1Div Contents 2» отображается в mydiv после того, как я делаю какой-либо выбор в форме. Я пытался заставить его повторять «Содержимое Div 1», если выбран вариант 1, и «Содержимое Div 2», если выбран вариант 2.

Спасибо и извините за длинный вопрос.

14.10.2012

Ответы:


1

Код :

 if ($_POST['myselect'] = "1") 

и

 if ($_POST['myselect'] = "2") {

Всегда будет оцениваться как true, с момента его назначения.

Вам нужно использовать:

  if ($_POST['myselect'] == "1") {
14.10.2012
  • Арх такая очевидная ошибка! Большое спасибо за указание на это в любом случае :) 15.10.2012

  • 2

    Это старая добрая,

    Изменить на

    <?php
     if ($_POST['myselect'] == "1") {
      echo "Div contents 1";
     }
     if ($_POST['myselect'] == "2") {
      echo "Div contents 2";
     }
    ?>
    

    Обратите внимание на ==

    14.10.2012
    Новые материалы

    Основы принципов S.O.L.I.D, Javascript, Git и NoSQL
    каковы принципы S.O.L.I.D? Принципы SOLID призваны помочь разработчикам создавать надежные, удобные в сопровождении приложения. мы видим пять ключевых принципов. Принципы SOLID были разработаны..

    Как настроить Selenium в проекте Angular
    Угловой | Селен Как настроить Selenium в проекте Angular Держите свое приложение Angular и тесты Selenium в одной рабочей области и запускайте их с помощью Mocha. В этой статье мы..

    Аргументы прогрессивного улучшения почти всегда упускают суть
    В наши дни в кругах веб-разработчиков много болтают о Progressive Enhancement — PE, но на самом деле почти все аргументы с обеих сторон упускают самую фундаментальную причину, по которой PE..

    Введение в Джанго Фреймворк
    Схема «работать умно, а не усердно» В этой и последующих статьях я познакомлю вас с тем, что такое фреймворк Django и как создать свое первое приложение с помощью простых и понятных шагов, а..

    Настольный ПК как «одно кольцо, чтобы править всеми» домашних компьютеров
    Вид после 9 месяцев использования С настольных компьютеров все началось, но в какой-то момент они стали «серверами», и мы все перешли на ноутбуки. В прошлом году я столкнулся с идеей настольных..

    Расширенные методы безопасности для VueJS: реализация аутентификации без пароля
    Руководство, которое поможет вам создавать безопасные приложения в долгосрочной перспективе Безопасность приложений часто упускается из виду в процессе разработки, потому что основная..

    стройный-i18следующий
    Представляем стройную оболочку для i18next. Эта библиотека, основанная на i18next, заключает экземпляр i18next в хранилище svelte и отслеживает события i18next, такие как languageChanged,..