php
  • javascript
  • mysql
  • variables
  • input
  • 2012-03-19 89 views 0 likes 
    0

    我有幾個div,它們是由php腳本自動生成的。每個div都有來自mysql數據庫的記錄。隱藏的輸入與唯一ID的值。我想要做的是當我點擊每個div時,我想打開中間的div覆蓋,並使用此ID訪問數據庫中的另一個數據。我有覆蓋工作。我只是不知道如何傳遞這個變量。如何在html標籤,javascript和php之間傳遞變量

    這件事情是這樣的:

    echo "<div class='friend'>".$a["username"]."<input type='hidden' value='$id'/>"."</div>"; 
    

    我希望有人會明白我所要求的。 :)我知道這是可怕的解釋。

    回答

    1

    你乾淨的代碼應該是這樣的:

    echo '<div class="friend"> ' . $a["username"] . '<input type="hidden" value="' . $id . '"/></div>'; 
    

    但方式更清潔將有這樣的朋友列表:

    echo '<ul>'; 
    echo '<li><a href="#' . $id . '" class="friend">' . $a["username"] . '</a></li>'; 
    echo '</ul>'; 
    

    當你u以jQuery爲例,你可以用幾行處理點擊事件,並將你的用戶ID傳遞給外部PHP,如下所示:

    $('.friend').click(function(e) { 
        e.preventDefault(); 
    
        $.get('/userDetails.php?uid=' + $(this).attr('href'), function(data) { 
        alert(data); 
        }); 
    }); 
    
    +0

    這是偉大的我只有一個問題,我不能觸發覆蓋它。它根本不起作用。任何想法,爲什麼,我把任何div id或類作爲觸發器,它的工作原理,完美。但是,我比朋友和什麼都沒有。 – 2012-03-19 21:02:10

    0

    This?

     echo "<div class='friend' onclick='(function(id){ $(\'#overlay\').html(id).show(); }(\'$id\'));'>".$a["username"]."<input type='hidden' value='$id'/>"."</div>"; 
    
    1

    像這樣的東西應該工作:

    $('div.friend').click(function(){ 
        val = $(this).find("input").val(); 
    
        //open your overlay with the value as a parameter 
    }); 
    
    +0

    這會做什麼?我需要得到該ID並把它放到php變量中?無論如何謝謝你快速回答。 – 2012-03-19 20:42:39

    +0

    然後您需要使用ajax來調用您的php腳本,並將val變量作爲GET或POST變量傳遞。我認爲你已經這樣做了,因爲你說你已經有覆蓋層工作。 – jasonlfunk 2012-03-19 20:44:06

    +0

    我剛剛拿到了! :)謝謝:) – 2012-03-19 20:45:27

    相關問題