Javascript ajax-symfony中的Concat变量
我想在按下add to cart后追加一个表行,但问题在于表行id,我想这样做 按下按钮后要追加的内容Javascript ajax-symfony中的Concat变量,javascript,symfony,twig,Javascript,Symfony,Twig,我想在按下add to cart后追加一个表行,但问题在于表行id,我想这样做 按下按钮后要追加的内容 function ajouter(idd, prix) { var test = idd; var urlEdit = "{{ path
function ajouter(idd, prix)
{
var test = idd;
var urlEdit = "{{
path('ajouterAuPanier', { 'id': "id" }) }}";
urlEdit=urlEdit.replace("id",test);
$.ajax({
method: 'POST',
url: urlEdit,
success: function(d)
{
if(d.msg == "success")
{
i++;
alert("Item Added");
var prixTotal = parseInt(document.getElementById('prixTotal').innerText);
prixTotal = prixTotal + prix;
document.getElementById('prixTotal').innerText = prixTotal;
var id = {{ panier.id|json_encode() }};
var table = document.getElementById("customers");
var row = table.insertRow();
var cell1 = row.insertCell(0);
var cell2 = row.insertCell(1);
var cell3 = row.insertCell(2);
cell1.innerHTML =document.getElementById(idd+""+idd).innerHTML;
cell2.innerHTML ="<div id="+id+id+id+">1</div><input type=\"submit\" name=\"+\" value=\"+\" style=\"margin-top: -11%;margin-left: 10%;\" onclick=\"updatePlus(i)\">" +
"<input type=\"submit\" name=\"-\" value=\"-\" style=\"margin-top: -19%;margin-left: 31%;\" onclick=\"updateMinus(i) \">\n";
cell3.innerHTML ="<div id="+id+id+">"+prix+"</div>";
// document.getElementById('cartt').innerHTML +="<div><td> PRODUIT AJOUTE </td><td> 1 </td></div>";
}
}
});
}
我需要得到的是:
<div id="panier">
<td>{{ panier.nomProduit }} </td>
====> <td><div id={{ panier.id }}{{ panier.id }}{{ panier.id }} > {{ panier.quantite }}</div>
<input type="submit" name="+" value="+" style="margin-top: -11%;margin-left: 10%;" onclick="updatePlus({{ panier.id }}) ">
<input type="submit" name="-" value="-" style="margin-top: -14%;margin-left: 22%;" onclick="updateMinus({{ panier.id }}) ">
</td>
<td><div id={{ panier.id }}{{ panier.id }}> {{ panier.prixTotal }} </div><br></td>
</div>
{{panier.nomProduit}
=>{{panier.quantite}}
{{panier.prixTotal}}
我在javascript中放置id的方式不起作用,有什么办法吗?如果您的javascript代码在脚本标记中,通常应该可以工作
<script type="text/javascript">
document.getElementById('cartt').innerHTML +="<div id=\"panier\">
<td>"+document.getElementById('nomP'+id).innerHTML+"</td><div id="{{
panier.id }}{{ panier.id }}">1</div>";
</script>
document.getElementById('cartt')。innerHTML+=“
“+document.getElementById('nomP'+id).innerHTML+“1”;
但是如果您的代码在外部javascript代码中,我不确定它是否有效,因为在加载任何外部js文件之前,twig解释器首先呈现html页面。因此,当加载js文件时,细枝解释器已经完成了工作。
但我不确定这一点好的。请用您的控制器更新您的问题,因为他不知道{{panier.id},所以不起作用。在这种情况下,只需检查您是否在控制器中传递了变量panier。实际上,我正在处理一个扩展包含该变量panier的布局的页面。在控制器操作中,您是否呈现了一个模板?即使你扩展了一个布局,如果变量窗格没有传递给你呈现的模板,这个模板也不会知道。不客气。是的,这就是我所说的在您的响应中传递值,因为您的模板不知道它
<script type="text/javascript">
document.getElementById('cartt').innerHTML +="<div id=\"panier\">
<td>"+document.getElementById('nomP'+id).innerHTML+"</td><div id="{{
panier.id }}{{ panier.id }}">1</div>";
</script>