簡體   English   中英

將變量傳遞給jQuery回調函數

[英]Passing variables to a jquery callback function

我在將變量傳遞到jquery函數中時遇到問題:

function showImage(type, top, url) {
$.getJSON('<?php echo $_SERVER['PHP_SELF']?>',{
    type: type,
    top: top,
    img: url,
    action: 'imginfo'    
    }, function(retval) {
        if (retval['isimg']) {
            $('#tdDimensions').html(retval['dimension']);
            $('#thPreview').html(retval['previewtext']);
            alert($('#tdPreview').html());
            alert(img);

這是我的代碼的一部分,但是問題是在成功函數( function(retval) )中,我無法再訪問傳遞給showImage()的參數。

我如何實現這一點,以便此代碼中的alert(img)起作用?

我如何實現這一點,以便此代碼中的alert(img)起作用?

只需使用showImage url showImage您的回調(作為內部函數)就可以訪問它。 如果不確定為什么,請閱讀有關閉包的更多信息。

在這種情況下, alert(url)應該可以解決問題;)

您還可以將該匿名對象文字放入變量中

var params = {
    type: type,
    top: top,
    img: url,
    action: 'imginfo'    
};

$.getJSON("<?php echo $_SERVER['PHP_SELF']?>", params, function(retval) { ... } );

因此,您可以在以下情況下訪問其任何屬性:

alert( params.img );

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM