我根据条件
将onclick事件定义为href这是我的剧本:
<script>
function comment_pop(id)
{
alert(id);
$('#login_ret_url').val('<?php echo base_url();?>idea/view_idea/'+id+'?action=comment');
ShowModalPopup('div_login');
}
</script>
<div class="rate_image">
<a href="<?php if(isset($_SESSION['logged_user']))
echo base_url().'idea/view_idea/'.$row['idea_slug'].'?action=comment';
else
echo 'javascript:void(0)';?>"
<?php if(!isset($_SESSION['logged_user']))
echo "onclick='comment_pop(".$row['idea_slug'].");'";?>>
<?php echo $total_comment[$key][0]['total_cont'];?>
</a>
</div>
问题在线上升
echo "onclick='comment_pop(".$row['idea_slug'].");'";?>>
我正在尝试使用变量连接函数,以便我可以将参数发送到JavaScript函数但它不起作用。
我想我需要使用一些转义参数,但我对此非常陌生。
答案 0 :(得分:1)
试试这个
echo "onclick='comment_pop(\'".$row['idea_slug']."\')'";?>>
或简化(分离php和html代码)..
<?php
if(isset($_SESSION['logged_user'])){
$hrefurl=base_url().'idea/view_idea/'.$row['idea_slug'].'?action=comment';
$onclickurl= "";
}else{
$hrefurl = 'javascript:void(0)';
$onclickurl= 'comment_pop("'.$row['idea_slug'].'");';
?>
<a href="<?php echo $hrefurl;?>" onclick="<?php echo $onclickurl; ?>" >
<?php echo $total_comment[$key][0]['total_cont'];?>
</a>
答案 1 :(得分:0)
尝试在“onclick =”之后转义单引号,例如
\'
答案 2 :(得分:0)
您当前的代码回显了带有引号的idea_slug,即它不是JS字符串(而是变量标识符,数字或其他内容):
…onclick='comment_pop(some_slug);'…
你想把它包装在引号中:
echo "onclick='comment_pop(\"".$row['idea_slug']."\");'";
这样你就得到了
…onclick='comment_pop("some_slug");'…