簡體   English   中英

通過Java onClick函數傳遞ID

[英]Pass ID on onClick Function in Javascript

我正在嘗試使用onClick函數傳遞電子郵件,並且希望在警報中顯示該電子郵件:

<td>
   <button class="btn btn-primary" name="buton" onclick="myfunction(<?php  $email;   ?>)" >Edit</button>
</td>

這是我的功能:

<script type="text/javascript">
    function myfunction(id)
    {
        alert(id);
    }
</script>

 function myfunction(id) { alert(id); } 
 <td> <button class="btn btn-primary" name="buton" onClick="myfunction('<?php echo $email; ?>')" >Edit</button></td> 

您需要將電子郵件放在“單引號”中

當您傳遞電子郵件(字符串)時,請嘗試此操作,它應該在quote ,而在JavaScript中使用php時,在這種情況下,您必須使用echo

<td><button class="btn btn-primary" name="buton" onclick="myfunction('<?php  echo $email;   ?>')" >Edit</button></td>

您想要的可能是PHP標記<?= ,該標記回顯$ email變量作為JavaScript函數的參數。 請注意,您將需要在電子郵件中使用引號:

onclick='myfunction("<?= $email ?>")'

如果未啟用短標簽,則必須使用長版本:

onclick='myfunction("<?php echo $email; ?>")'

您必須進行兩項更改以驗證您的代碼:

  1. 您應該添加echo以將php變量傳遞給JS。

  2. 您需要添加引號,因為$email是一個字符串,並且您已經在onclick屬性中使用了雙引號。

     <td> <button class="btn btn-primary" name="buton" onclick="myfunction('<?php echo $email; ?>')" >Edit</button> </td> 

您的代碼正在運行,只是沒有以一種很好的方式回顯$email的值:
myfunction(' … ')缺少單引號
-在您的php標簽中缺少echo myfunction('<?php echo $email ?>')

為了避免這種問題……
在您的php中,建議您使用heredoc語法:

echo <<< EOD
<td><button class="btn btn-primary" name="buton" onclick="myfunction('{$email}')">Edit</button></td>
EOD;

注意變量周圍的{ } 它們不是必需的,但我建議您使用它們,因為它們會使變量更明顯。

⋅⋅⋅

結果將是:

 function myfunction(id) { alert(id); } 
 <td><button class="btn btn-primary" name="buton" onclick="myfunction('myemail@stackoverflow.com')">Edit</button></td> 

有關Heredoc語法的文檔: http : //php.net/manual/zh/language.types.string.php#language.types.string.syntax.heredoc

希望對您有所幫助。

回顯php標簽中的變量

<td><button class="btn btn-primary" name="buton" onclick="myfunction('<?php  echo $email;   ?>')" >Edit</button></td>

暫無
暫無

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

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