2016-06-30 5 views
-3
{include file="head.tpl" title="Combate"} 
{include file="navBar.tpl" dir=$dir} 
<table id="CombatLister"> 

</table> 

Nombre: <input type="text" id="nombrePJ"> 
AC <input type="number" id="ACPJ"> 
Iniciativa <input type="number" id="Init"> 
<button id="añadirParty" onclick="addPJButt()">Añadir</button> 



<script> 

function addPJButt(){ 
    var name=document.getElementById("nombrePJ").value; 
    var ac=document.getElementById("ACPJ").value; 
    var iniciativa=parseInt(document.getElementById("Init").value); 
    addPJ(name,ac,iniciativa); 
} 
function addPJ(nombre,ac,init){ 
    var table=document.getElementById("CombatLister"); 
    var row=table.insertRow(0); 
    var cellNombre=row.insertCell(0); 
    var cellInit=row.insertCell(1); 
    var cellAc=row.insertCell(2); 
    cellNombre.innerHTML=nombre; 
    cellInit.innerHtml=init; 
    cellAc.innerHtml=ac; 
} 

</script> 
<script> 
{$x=0} 
{foreach $party as $pj} 

addPJ({$pj.nombre},{$pj.ac},{$pj.init}) 

{/foreach} 
</script> 

別のページの配列を使用するスマートテンプレートがあり、それを「CombatLister」テーブルに追加します。ただし、何らかの理由でaddPJ()スクリプトが実行されません。私はJavascriptのロープを学んでいるので、何かをスキップしていますが、今のところ、なぜ動作しないのかについての答えはありません。動的に追加されたときにスクリプトが実行されていません

addPJButt()を使用してaddPJ()スクリプトが間違っているかどうかを確認しようとしましたが、スクリプトが動作しています。

私はSmartyの問題とは思わない。

<script> 

    addPJ(Galahad,14,5); 

</script> 

PS:最初のセルだけが追加された余分な問題としてではなく、それほど重要ではない、addPJのinsertCell方法で私は$ PJを呼び出すところ、これを足す、そのようなページのソースコードをチェック。

答えて

0

addPJ(Galahad,14,5);は、未定義の変数Galahadを探しています。私は年間でSmartyのと協力し、引用符を想定していないリテラル

+0

感謝されます:あなたはそれはjavascriptの文字列

として印刷されますので、それを引用する必要が

addPJ('{$pj.nombre}',{$pj.ac},{$pj.init}) 

注意してください君は!それは今完璧に動作します –

関連する問題