[英]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; ?>")'
您必須進行兩項更改以驗證您的代碼:
您應該添加echo
以將php變量傳遞給JS。
您需要添加單引號,因為$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.