簡體   English   中英

如何讓超鏈接將2數組值傳遞給另一個腳本並打印該腳本的頁面?

[英]How can I have a hyperlink pass 2 array values to another script and have that script's page printed?

我有一個從數組顯示的名稱列表(1-15行)。 我希望管理員通過單擊稱為“鏈接”的超文本從列表中選擇正確的名稱。 記錄ID在數組中,我希望將其傳遞給調用的腳本。

我發現此javascript可以正常工作,但我希望打印出linkur.php頁面(及其信息消息)。 我知道由於void(0)而無法打印,但是無法確定所需的正確方法。

<a href="javascript:void(0);" onclick='$.get("linkur.php",{ rid: "<?php echo $k['id']; ?>", uid: "<?php echo $uid; ?>", } ,function(data){ $("#link<?php echo $k['id']; ?>").html(data); });'>Link</a>

另外,是否可以使用純HTML進行超鏈接? 超鏈接是直接的,除了傳遞數組值。

感謝您的任何想法。

卡爾

您的要求令我有些困惑。 您沒有提到需要異步請求,但這就是您的代碼使用jQuery庫所做的事情。 如果您不需要異步請求,並且想要查看結束頁面,則只需構建一個常規鏈接:

<a href="linkur.php?rid=<?php print $rid; ?>&uid=<?php print $uid; ?>">Link</a>

這將在頁面上以實值而不是變量呈現:

<a href="linkur.php?rid=123&uid=281">Link</a>

單擊鏈接后,將rid = 123uid = 281傳遞給結束腳本,並在屏幕上看到其輸出。

適當地添加一些隱性

如果您需要異步加載此數據,則代碼中只添加了少量內容。 保留上面剛剛引用的原始鏈接,但向其中添加一個類:

<a href="linkur.php?rid=123&uid=281" class="loadme">Link</a>

現在,使用jQuery,我們可以確定這些請求並在其他位置加載它們的HTML:

$(function(){
  // Intercept the click event of our links
  $(".loadme").click(function(e){
    // Prevent them from leaving the page
    e.preventDefault();
    // Fire off a request for their content
    $.get($(this).attr("href"), function(data) {
      // Load their content into a container on our page
      $("#content-viewer").html(data);
    }, "html");
  });
});

請注意,我引用了#content-viewer 您需要將其放置在頁面的某個位置:

<div id="content-viewer">I will show the content .loadme links!</div>

至少可以這樣說,您的方法有點笨拙。 現在,您需要在每個鏈接上都包含javascript內容,而正確的方法是分別綁定函數。 您可以改為執行以下操作:

<a href="#" class="some_links" rel="<?php echo $k['id']; ?>" href="linkur.php?rid=<?php echo $k['id']; ?>&uid=<?php echo $uid; ?>">Link</a>

它將以以下方式輸出到瀏覽器:

<a href="#" class="some_links" rel="123" href="linkur.php?rid=123&uid=456">Link</a>

並在一個單獨的Javascript文件中:

$('a.some_links').click(function() {
    $("#link"+$(this).attr('rel')).load($(this).attr('href'));
    return false;
});

如果我正確理解了您的代碼,這將做完全相同的事情–將具有傳遞變量的linkur.php中的內容加載到#link #link+rid元素中。

暫無
暫無

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

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