0

imagickPHP拡張機能を使用して作成およびイメージ化するPHPスクリプトがあります。次のように、ページの読み込み時に画像を表示します。

<img id="myImage" src="php/image-script.php" />

PHPスクリプトは、スクリプトに組み込まれているimagickイメージオブジェクトをエコーすることで終了します。

echo 'myImage';

これはすべて、ページの読み込み時に正常に機能します。入力ボックスからタブアウトしたときに発生するjQueryAJAXリクエストを追加しました。次に、入力ボックスの値は、次のようなクエリ文字列を介してimage-script.phpに渡されます。

    $('#inputHeight').on('blur', function(){

    var $height = $('#inputHeight').val(); 

        $.ajax({ url: './php/preview-image.php?h=' + $height,
             type: 'post',
             success: function(output) {
                $('#preview').attr('src', output);             
             }

        });

    });

私の問題は、AJAXリクエストの成功関数にあります。現在、出力でimg src属性を更新しています(上記のとおり)。これは、画像の生の文字列値を属性に書き込むだけであり、更新されません。画像を正しく更新するにはどうすればよいですか?

4

1 に答える 1

0

preview-image.php スクリプトを 2 回呼び出しているように見えるため、完全に正しいかどうかはわかりませんが、解決策を見つけました。最初に URL で、次に Success 関数で。更新されたコードは次のとおりです。

$('#inputHeight').on('blur', function(){

    var $width = 550;
    var $height = $('#inputHeight').val(); 

        $.ajax({ url: './php/preview-image.php?w=' + $width + '&h=' + $height,
             type: 'post',
             success: function(output) {
                $('#preview').attr('src', 'php/preview-image.php?w=' + $width + '&h=' + $height + '&' + Math.random());             
             }
    });

});
于 2012-10-27T23:22:31.657 に答える