0

外部ファイルにある PHP コードのセグメントを呼び出して実行したいと考えています。jQueryが関係する方法を理解しています。これまでの私のコードは次のとおりです。

<html>
<head>
    <title>test</title>
</head>

<body>

    <script src="jquery.js"></script>
    <script language="javascript" type="text/javascript"> 
         $.post("ext.php", { name: "John", time: "2pm" })
        .done(function(data) {
          alert("Data Loaded: " + data); });

        $(document).ready(function(){
    $(this).load('ext.php');});

    </script>  

</body>

外部ファイル (ext.php) は次のとおりです。

<?php
echo $_POST['name'] . ' and- ' . $_POST['time'];
?>

コードは、変数nametime画面 (およびポップアップ ウィンドウ) に出力する必要があります。ポップアップは正常に動作しますが、コードは画面に検証可能情報を出力しません。

ありがとう :)

4

3 に答える 3

4

これをすでに知っている場合はご容赦ください。

あなたの例では、 jQuery メソッド$.post()の合理化された形式を使用しています。$.ajax()AJAX に自信を持てるようになるまでは、この簡単な (しかしより大きな) 形式を使用することをお勧めします。また、合理化された (クイック)メソッド$.ajax()よりもはるかに多くのことを行うことができます。$.post

情報を入力するための入力ボックスをいくつか追加しました。また、画面に表示するものを置く場所が必要なので、そのための DIV を作成しました。

Ajax はデータを外部の php ファイルにポストし、受け取ったデータを処理して応答を返します。次のようになります。

ファイル #1:

<html>
    <head>
        <script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
        <script type="text/javascript">
            $(document).ready(function() {

                $('#mybutt').click(function() {
                    var nom = $('#yername').val();
                    var tim = $('#thetime').val();

                    $.ajax({
                        type: "POST",
                        url: "receiving_file.php",
                        data: 'name=' + nom + '&time=' +tim,
                        success:function(data){
                            alert('This was sent back: ' + data);
                            $('#report').html(data);
                        }
                    }); //END ajax

                }); //END click fn

            }); //END document.ready
        </script>
    </head>
<body>

Name: <input type="text" id="yername"><br>
Time: <input type="text" id="thetime"><br><br>
<input type="button" id="mybutt" value="Go">
<br><Br>
<div id="report"></div>

ファイル #2: receive_file.php

<?php
    echo 'You entered: ' . $_POST['name'] . ' and- ' . $_POST['time'];
于 2013-06-04T17:44:30.683 に答える
0

これを試して:

<script type="text/javascript"> 
    $(document).ready(function(){        
        $.post("ext.php", { name: "John", time: "2pm" }).done(function(data) { 
            alert("Data Loaded: " + data);
            $('body').html(data);
        });
    });
</script>  
于 2013-06-04T17:57:21.513 に答える