2015-10-06 151 views
0

如何在其中包含php变量的onclick功能

$delete = "<a onclick='return confirmDelete('deleterecord.php?chkid=$sl&table=$getid&path=$validURL');'><img src='images/dustbin.png' width='43px' height='30px'></a>"; // link not pass 

//脚本<a>标签添加onClick事件

<script> 
    function confirmDelete(delUrl) { 
     if (confirm("Are you sure you want to delete")) { 
      window.location = delUrl; 
     } 
    } 
</script> 

回答

0

1. $链接=“deleterecord.php chkid = $ SL &表= $ getid & path = $ validURL“;

,并通过单引号之前使用黑色斜线使用

return confirmDelete(\"<?=$link?>\") 

2. 逃逸单引号:

<img src=\'images/dustbin.png\' width=\'43px\' height=\'30px\'> 
+0

仍然没有运行confirmDelete ????? – SANJOG

+0

你是否逃过单引号? –

+0

你面临的问题是什么? –

0

使用PHP的回声返回HTML/CSS/JS的东西: http://php.net/manual/de/function.echo.php

<?php 
$delete = " 
    <a onclick='confirm_(\"deleterecord.php?chkid=$sl&table=$getid&path=$validURL'\")'; class='link'> 
     <img src='images/dustbin.png' width='43px' height='30px'> 
    </a>"; 
echo($delete); 
?> 
<script> 
function confirm_(url){ 
     console.log(url); 
     if (confirm("Are you sure you want to delete")){ 
      window.location = url; 
     } 
} 
</script> 

人造丝Dabre说,你必须逃避字符串。


Maurize休闲/智能/懒惰的解决方案:

你应该回声路径的链路状delete.php?action=delete&id=2

和PHP端

if (isset($_GET["action"]) && $_GET["action"] == "delete"){ echo $_GET["id"]; }

意志的样子:

<?php 
if (isset($_GET["action"]) && $_GET["action"] == "delete"){ 
    echo $_GET["id"]; 
} 
?> 
<a href="index.php?action=delete&id=1">Lazy Casual?</a> 

<?php 
echo(" 
<a href='deleterecord.php?chkid=$sl&table=$getid&path=$validURL'> 
    <img src='images/dustbin.png' width='43px' height='30px'> 
</a> 
"); 
?> 

测试和工程像墨西哥。

  • 缺失的杰作将使用AJAX + JS - ?Maurize
+0

是的,我已经回应,但该链接不会传递到功能由于' '(commass) – SANJOG

+0

我可以告诉你一个更聪明的方法吗? – Maurize

+0

是的,我现在正在等待 – SANJOG