0

PHPとjQueryを学んでいます。HTML IMG タグで動的に作成された画像を返す renderPicture.php という PHP ファイルがあります。ページをリロードせずに、Web ページのクリック イベントの後にその画像を変更したいと考えています。renderPicture への jQuery Ajax 呼び出しが必要であることはわかっています。そして、div の内部 HTML をその jQuery Ajax 呼び出しの結果に設定する必要があることを知っています。ここで内部 HTML を設定する方法を学びました jQuery を使用して div の innerHTML を置き換える方法は? しかし、AJAX 呼び出しでこれを行う方法がよくわかりません。

jQuery を使用して、DIV の内部 HTML を PHP ファイルの出力に設定するにはどうすればよいですか?

jQuery と HTML の一部を次に示します。

<script>

$(document).ready(function(){
   $("#myDIV").click(function(){
        //var resultOfAjaxCall = $.ajax({ url: './renderPicture.php',});
        $("#myDIV").html(resultOfAjaxCall); //This is roughly what I want to do
    });
});

</script>

</head>
<div id='myDIV'>
<?php 
$cryptinstall="./renderPicture.php";
include $cryptinstall; 
?>
</div>
</html>

ここに renderpicture.php があります

<?php

$cryptinstall="./cryptographp.fct.php";
include $cryptinstall; 
if(session_id() == "") session_start();
$_SESSION['cryptdir']= dirname($cryptinstall);
$cfg=0;
echo "<img id='cryptogram' src='".$_SESSION['cryptdir']."/cryptographp.php?cfg=".$cfg."&".SID."'>";
 ren
?>
4

3 に答える 3

3

使用.load():

$(document).ready(function(){
   $("#myDIV").click(function(){
        $("#myDIV").load('renderPicture.php');
    });
});

これは次の省略形です。

$(document).ready(function(){
   $("#myDIV").click(function(){
        $.ajax({
            url: './renderPicture.php',
            success: function(resultOfAjaxCall) {
                $("#myDIV").html(resultOfAjaxCall);
            }
        });
    });
});

AJAX 呼び出しの結果で何かをしたいときはいつでも、コールバック関数でそれを行う必要があります。

于 2013-08-21T16:43:31.760 に答える
0

私の推測が正しければ、load()が必要です。

サーバーからデータをロードし、返された HTML を一致した要素に配置します。

  $("#myDIV").load('qualifiedFilePath');
于 2013-08-21T16:44:50.237 に答える
0

jQuery.get()ajax リクエストを行うために使用します。

$.get('ajax/test.html', function(data) {
  $('#myDIV').html(data);
  alert('Load was performed.');
});
于 2013-08-21T16:45:01.437 に答える