2011-12-20 9 views
0

javacript関数checkStatus()には、4つの引数bus_company_name,bus_id,bus_timebus_dateを使用できます。最初の3つの引数はデータベースから取得されますが、4つ目の引数はユーザーによって入力されます。そのために私はHTMLのように書かれている:フィールドからjavascript関数への値の追加

{foreach name = feach item = k from = $allBuses} 
     <p> 
     {$k->bus_company_name}<br /> 
     A/C {$k->bus_is_ac}<br /> 
     Date : <input type="text" name="date" id="dt" />yyyy/mm/dd 

     <a href="javascript:checkStatus('{$k->bus_company_name}','{$k->bus_id}','{$k->bus_time}',jrny_date)">Status</a> 
     </p> 
    {/foreach} 

を私はID dateと入力タイプからjrny_dateをしたいです。私はそれをどのように実装できますか?

答えて

2

これを使用すると、要素の値がparamとして渡されます。

javascript:checkStatus('{$k->bus_company_name}','{$k->bus_id}','{$k->bus_time}',document.getElementById('dt').value) 

しかし、関数checkStatusの内部に入ることもできます。

1

アイテムのリストをループしているので、各イテレーションで現在のインデックスを使用して固有の日付IDを作成することをおすすめします。これをスクリプトに渡してIDの値で要素の値を取得することができます:

{foreach name = feach key = i item = k from = $allBuses} 
     {$k->bus_company_name}<br /> 
     A/C {$k->bus_is_ac}<br /> 
     Date : <input type="text" name="date" id="dt_{$i}" />yyyy/mm/dd 

     <a href="javascript:checkStatus('{$k->bus_company_name}','{$k->bus_id}','{$k->bus_time}','dt_{$i}')">Status</a> 
{/foreach} 

<script> 
    function checkStatus(name, id, time, date_id){ 
     var date = document.getElementById(date_id); 
     if(date){ 
      alert(date.value); 
      // Do something fancy with the date 
     } 
    } 
</script> 
関連する問題