我如何在单引号之间添加两个变量

How can i add two variables between single quotes

我有

function delImage(posteId,imagebinId) { 
    $.get("<?php  echo base_url('/Home/deletePostimage/') ?>"); 

    return false; 
} 

我想成为像/Home/deletePostimage/posteId/imagebinId

我试过了

$.get("<?php  echo base_url('/Home/deletePostimage/')+posteId+"/"+imagebinId ?>"); 

但是它把两个数相除

喜欢 posteId=5 imagebinId =2

结果将是

/Home/deletePostimage/2,5

来自

的参数
<a class="postimgsd" onClick="if(confirm('Are you sure you want to delete this image ?')){delImage(<?php echo $value['id'],$get_images[0]['binId']; ?>); rmItem(<?php echo $i; ?>);}else{} ;  " >

使用 ES6,您可以使用 string interpolation:

$.get(`<?php  echo base_url('/Home/deletePostimage/${postId}/${imagebinId}') ?>`);

没有 ES6,还有另一个 answer 可以回答它,或者使用这个:

var url = '/Home/deletePostimage/' + postId + '/' + imagebinId;
$.get("<?php  echo base_url('" + url + "') ?>");

另外,调用这个函数的代码其实应该是:

<a class="postimgsd" onClick="checkDeletion()" />

<script type='text/javascript'>
    function checkDeletion() {
        if(confirm('Are you sure you want to delete this image ?')) {
            var postId = <?php echo $value['id']; ?>;
            var imagebinId = <?php echo $get_images[0]['binId']; ?>;
            delImage(postId, imagebinId);
            rmItem(<?php echo $i; ?>);
        }
    }
</script>

您需要记住,在将 html 发送到您的用户浏览器之前,PHP 是在后端处理的。也就是说,php 标签 (<?php ... ?>) 之间的所有内容在 javascript 甚至存在之前都是 rendered/processed。

因此,如果您将任何 JavaScript 代码放入 PHP 代码中,它将无法正常工作。

要使其正常工作并保持清洁,请执行以下操作:

function delImage(posteId,imagebinId) { 
    let url = "<?php  echo base_url('/Home/deletePostimage/') ?>";
    $.get(url + posteId + "," + imagebinId); 

    return false; 
}