尝试从AJAX中的文本框中获取价值并将其发送到新页面

时间:2019-04-10 05:00:58

标签: php html mysql sql

在使用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 个答案:

答案 0 :(得分:1)

我认为您失去了注意力...检出此代码

<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脚本

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

  }
?>

答案 1 :(得分:0)

您在本节中使用的变量“文本” {text:text} 未定义。因此,将不会发送任何数据。

除了这里还有其他问题外,您是否还希望同时发送两个值?您的代码看起来不支持它。您确定要在用户单击文本框时发生这种情况吗?

答案 2 :(得分:0)

首先在输入中添加value =“”

然后在您的js代码中,您将发送未定义的“文本”变量,因为您的变量是“来自”。

因此,请尝试添加:data:{text:from}

答案 3 :(得分:0)

您尚未在ajax中传递from,to和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;

  }
?>