Execute a function using ajax

时间:2012-11-27 作者:PrivateUser

我有一个函数function getSingleAmazonProduct($asin=\'\').

它返回一个亚马逊产品。

我有一个表单字段可以输入$asin.

    <div id="asinform">
        <form id="productpreview" action="#">
        <input type="text" id="asin" name="asin" value="" placeholder="Enter ASIN"/>
        <input type="hidden" name="asin_form_post" value="1"/>              
        <input type="submit" value="Preview"/>
    </div>
    <div id="asinpreview">
    <!--  Preview goes here -->
    </div>

if ( isset($_POST[\'asin_form_post\']) && $_POST[\'asin_form_post\'] == \'1\') {
    $asin = $_POST[\'asin\'];
    $preview = getSingleAmazonProduct($asin);
}
有人能告诉我如何使用ajax在中显示返回的数据吗asinpreview div?

1 个回复
最合适的回答,由SO网友:PrivateUser 整理而成
<div id="asinform">
        <form id="productpreview" action="#">
        <input type="text" id="asin" name="asin" value="" placeholder="Enter ASIN"/>
        <input type="hidden" name="asin_form_post" value="1"/>              
        <input type="submit" value="Preview"/>
</div>
    <div id="asinpreview">
    <!--  Preview goes here -->
    </div>
<script type="text/javascript">
if ( typeof jq == "undefined" )
    var jq = jQuery;

jq(document).ready( function() {
    jq("#productpreview").submit(function() {
        var asin =   jq("#asin").val();
        jq.post( ajaxurl, {
            action: \'amazon_product_preview\',
            \'asin\': asin
        },
        function(response) {
        jq(\'#asinpreview\').html(response);
        });
        return false;
    } );
} );

</script>

function amazonajax() {
if ( isset($_POST[\'asin\'])) {
    $asin = $_POST[\'asin\'];
    $preview = getSingleAmazonProduct($asin);
    echo $preview;
    die();
    }
}
add_action(\'wp_ajax_amazon_product_preview\', \'amazonajax\' );
add_action(\'wp_ajax_nopriv_amazon_product_preview\', \'amazonajax\' );
结束

相关推荐

Conditional Ajax inclusion

我有一个自定义界面,在运行时使用30多个ajax文件某些文件仅在类别中使用。php而其他的仅在页面中使用。php。。。我在函数中包含了ajax加载程序php文件。php文件example: include TEMPLATEPATH . \'/ajaxLoops/ajax-open_client_editform.php\'; include TEMPLATEPATH . \'/ajaxLoops/ajax-submit_client_editform.php\'; 这一切都很好,但当我