如何使用 AJAX 返回 JS 值

How to return JS value using AJAX

本文关键字:JS 返回 AJAX 何使用      更新时间:2023-09-26

我有这样的代码

$(document).ready(function() {
    $('#myHref').change(function(){
        var value = $('#myHref').val();
        $.get('get_projectName.php',{id:value},function(data)
        { 
        .....
        .....
        if(condition here){}
        }); 
    }); 
});

我需要根据从get_projectName.php返回的值检查条件。让get_projectName.php有$abc = 1;,根据这个值,我需要使用 if 条件。

您的jquery条件将完全取决于从php函数返回的数据类型。让我们检查一下示例:-

示例 1 :-

如果您的php代码是:-

<?php
if(isset($_GET['id'])){ // check id coming from `ajax` or not
  $data = 1; // as you said
}
echo $data;
?>

那么jquery将是:-

<script src="https://code.jquery.com/jquery-1.12.0.min.js"></script><!-- library needed-->
<script type = "text/javascript">
$(document).ready(function() {
   $('#myHref').change(function(){ // you need to check that it is working or not because i don't know from where it is coming
        var value = $('#myHref').val(); // same as above check yourself.
        $.get('get_sales_price.php','',function(data){ 
            if(data ==1){
                alert('hello');
            }else{
                alert('hi');
            }
        });
    });
});
</script>

示例 2:-

但是,如果您的php代码如下所示:-

<?php
if(isset($_GET['id'])){ // check id coming from `ajax` or not
     $data = Array('a'=>1,'b'=>2);
}
echo json_encode($data);
?>

那么jquery将如下所示:-

<script src="https://code.jquery.com/jquery-1.12.0.min.js"></script>
<script type = "text/javascript">
$(document).ready(function() {
    $('#myHref').change(function(){
        var value = $('#myHref').val();
        $.get('get_sales_price.php','',function(data){ 
            var newdata = $.parseJSON(data);//parse JSON
            if(newdata.a ==1 && newdata.b !== 1){
                alert('hello');
            }else{
                alert('hi');
            }
        });
    });
});
</script>

注意:- 这些是简单的例子,但条件会有所不同jquery,基于php返回的响应。

忘记了.done

  $.get('get_projectName.php',
   {id:value}
  ).done(function(data) { 
     console.log(data)
     var data2 = JSON.parse(data);
     if(data2.abc === 1)
     {
       //Do something
     }else{
       //Else Do something
     }
  }); 

你可以按如下方式编写代码 -

//At javscript end
$.get( "get_projectName.php", function( data ) {
   if(data == "1"){
     // do your work
   }
});
// At php end
<?php
$abc = 1;
echo $abc;
?>

希望这对您有所帮助。

    在主php
  • 文件中 在值更改时,获取值通过ajax传递给它一个php文件子php文件
  • 在子 php 文件中,以 json 格式回显输出
  • 检索输出并进行计算

jQuery 库,如果从未包含

<script src="//code.jquery.com/jquery-1.11.0.min.js"></script>
<script src="//code.jquery.com/jquery-migrate-1.2.1.min.js"></script>

阿贾克斯

<script type="text/javascript">
$(document).ready(function(){ 
    $('#myHref').on('change', function(){ 
        var value = $('#myHref').val();
        $.ajax({
                type: "POST",  
                url: "get_projectName.php",  
                data: { id:value },
                dataType: "json",
                success: function(theResponse) {
                        var abc = theResponse['abc'];
                        if (abc == 1) {
                        //Do something
                        } else {
                        //Else Do something
                        }
                    }  
            });
    });
});                 
</script>

get_projectName.php

<?php
$id = isset($_POST['id']) ? $_POST['id'] : '';
$ReturnArray['abc'] = 1;
echo json_encode( $ReturnArray );
?>