Попытка получить значение из текстового поля в AJAX и отправить его на новую страницу - PullRequest
0 голосов
/ 10 апреля 2019

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

<div align = "right">
    <div class = ='text'>
    <span style="float:right;"><strong> Status Report Date</strong> 


    <label for="from">From</label>
    <input type="text" id="from" name="from">
    <label for="to">to</label>
    <input type="text" id="to" name="to">
    <div id="dates"></div>

Это мои поля выбора даты, так как я прикрепил к ним скрипт выбора даты, но решил, что они действуют как обычные текстовые поля.

Вот скрипт для получения значений из текстовых полей

 $(document).ready(function(){  
    $('input[type="text"]').click(function(){  
       var from = $(this).val();  
       $.ajax({  
            url:"sortByDates.php",  
            method:"POST",  
            data:{text:text},  
            success:function(data){  
                 $('#dates').html(data);  
            }  
       });  
      });  
 });   
 </script>

Вот файл .php, в который я пытаюсь отправить значения.

   <?php
    if (isset($_GET['pageSubmit'])) {
   $firstDate= $_POST['from'];
$lastDate= $_POST['to'];

   echo $firstDate;
   echo $lastDate;

  }

Ответы [ 4 ]

1 голос
/ 10 апреля 2019

Я думаю, что вы потеряли фокус ... Проверьте этот код

<div alight = "right">
<div class='text'>
<span ><strong> Status Report Date</strong> 
<label for="from">From</label>
<input type="text" id="from" name="from">
<label for="to">to</label>
<input type="text" id="to" name="to">
<div id="dates"></div>
<button id="submit">click</button>

Jquery

<script>
 $(document).ready(function(){  
    $('#submit').click(function(){  
        var from = $('#from').val();  
        var to = $('#to').val(); 
         ps = "submit";




     $.ajax({  
            url:"sortByDates.php",  
            method:"POST",  
            data:{pageSubmit: ps,from:from, to: to},  
            success:function(data){  
                 $('#dates').html(data);  
            }  
       });  
      });  
 });   

php script

<?php
   if (isset($_POST['pageSubmit'])) {
        $firstDate= $_POST['from'];
        $lastDate= $_POST['to'];
        echo $firstDate;
        echo $lastDate;

  }
?>
0 голосов
/ 10 апреля 2019

Сначала добавьте значение = "" во входах

Затем в вашем js-коде вы отправляете переменную «text», которая не определена, поскольку ваша переменная «from».

Так что попробуйте добавить: data:{text:from}

0 голосов
/ 10 апреля 2019

Вы не передали значения из, в и pagesubmit в ajax. Попробуйте этот код, надеюсь, это поможет В аяксе

$(document).ready(function(){  
        $('input[type="text"]').click(function(){  
           var from = $("#from").val(); 
           var to = $("#to").val();  
           $.ajax({  
                url:"sortByDates.php",  
                method:"POST",  
                data:{from:from,to:to,pageSubmit:1},  
                success:function(data){  
                     $('#dates').html(data);  
                }  
           });  
          });  
     });   

В PHP

<?php
    if (isset($_GET['pageSubmit'])) {
        $firstDate= $_POST['from'];
        $lastDate= $_POST['to'];
        echo $firstDate;
        echo $lastDate;

  }
?>
0 голосов
/ 10 апреля 2019

Переменная «текст», которую вы используете в разделе {Текст: текст} не определено Таким образом, поэтому никакие данные не будут отправлены.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...