从php将变量获取到jQuery


get variable to jQuery from php

这是我在setings.php 中的变量

$error = output_errors($errors);

我想在我的jQuery文件'settings.js'中回显

   $('#save_settings').click(function(){
    var first_name = $('#first_name').val();
    var last_name = $('#last_name').val();
    var email = $('#email').val();
    $.post('settings.php', { first_name: first_name, last_name: last_name, email: email}, function(data){
        $('#show').html('settings saved').fadeIn(500).delay(2000).fadeOut(500);
        alert(data);
    });

});

如果您想在JavaScript和PHP之间进行通信,最好的方法是创建一个隐藏的输入字段来填充errors变量。然后您可以使用jQuery读取该值。

输入字段:

<input type="hidden" value="<?php echo $error; ?>" id="errors" />

以及jQuery代码:

var errors = $("input#errors").val();

您不能将PHP代码放在"javascript"文件中,PHP代码必须在PHP文件中。如果将以下代码放在.php文件中,则可以使用:

<html>
    <head>
        <title>javascript test</title>
        <script>
            var error = '<?php echo $error;?>';
            alert(error);
        </script>
    </head>
<body>
</body>
</html>

我假设您的$错误会因$_POST值的不同而不同。如果您的响应标头是HTML格式的,那么您可以执行类似的操作。

// in your JS codes.
$.post('settings.php', function(response) {
  $('#show').html(response).fadeIn(500).delay(2000).fadeOut(500);
});
// in your php codes.
<?php if(isset($error)) { echo($error); } else { echo("setting saved"); }  die(); ?>

您想要从服务器端在js中执行的任何操作都必须是AJAX或JSON响应。从php函数中回显它,并以javascript中的AJAX或JSON形式获取它。

$.getJSON('url for the php file', function(data){}

在php文件中只回显值

参见http://php.net/manual/en/function.json-encode.php

或者取一个隐藏的输入字段并将值放在那里。您可以使用"id"或"class"属性从js中获取该值