2011-03-22 10 views
0

ボタンがあるフォームを作成しようとしています。クリックすると、JavaScript関数が呼び出され、テキストボックスを含む新しい行が追加されます。簡単に言えば、ボタンをクリックすると、新しいテキストが追加されます。ここに関数があります:新しいテキストボックスにデフォルト値を設定する

function addRowToTable() 

    { 
     var tbl = document.getElementById('tblSample'); 
     var lastRow = tbl.rows.length; 
     // if there's no header row in the table, then iteration = lastRow + 1 
     var iteration = lastRow; 
     var row = tbl.insertRow(lastRow); 

     // left cell 
     var cellLeft = row.insertCell(0); 
     var textNode = document.createTextNode(iteration); 
     cellLeft.appendChild(textNode); 

     // right cell 
     var cellRight = row.insertCell(1); 
     var el = document.createElement('input'); 
     el.type = 'text'; 
     el.name = 'txtRow' + iteration; 
     el.id = 'txtRow' + iteration; 
     el.size = 40; 

     cellRight.appendChild(el); 

     // select cell 
     var cellRightSel = row.insertCell(2); 
     var sel = document.createElement('select'); 
     sel.name = 'selRow' + iteration; 
     sel.options[0] = new Option('text zero', 'value0'); 
     sel.options[1] = new Option('text one', 'value1'); 
     cellRightSel.appendChild(sel); 
    } 

ここで、私はどのようにテキストボックスとドロップダウンボックスのデフォルト値を設定できますか?私はこのコードでどこに置くべきですか?<?php echo $data['pno'];?>

私はHTML形式で入れてみました。最初の行では動作しますが、2行目では動作しません。ありがとう。

+0

の作品jQueryのはオプションですか? –

+0

テキストボックスの値は、作成時にajax呼び出しを介してPHPスクリプトから取得されますか? –

+0

ええとしかし、plz私はたくさんのアイデアabt jqueryを持っているので、それの完全な例がある場合私に知らせてください。 – umar

答えて

2

私はこのように解決しました

<input type="button" value="Add" onClick="addRowToTable(<?php echo $data['pno'];?>);" /> 

とJavaScript側で

function addRowToTable(a) 
{ 
    var tbl = document.getElementById('tblSample'); 
    var lastRow = tbl.rows.length; 
    // if there's no header row in the table, then iteration = lastRow + 1 
    var iteration = lastRow; 
    var row = tbl.insertRow(lastRow); 

    // left cell 
    var cellLeft = row.insertCell(0); 
    var textNode = document.createTextNode(iteration); 
    cellLeft.appendChild(textNode); 

    // right cell 
    var cellRight = row.insertCell(1); 
    var el = document.createElement('input'); 

    el.type = 'text'; 
    el.value=a; // here i have achived the value 
    el.name = 'txtRow' + iteration; 
    el.id = 'txtRow' + iteration; 
    el.size = 40; 


} 

はない良い解決策になるかもしれませんが、私の場合のために、それは

0

どのようにあなたのようなあなたのhtmlで別のJS変数にデフォルト値を保存について:

var defaultValue = "<?php echo $data['pno'];?>"; 

またはこの試してください:あなたは新しいinputを追加するとき、あなたはそれを使用することができます次に

var defaultValue = "<?= $data['pno'] ?>"; 

el.value = defaultValue; 
+0

私はそれを正確にやりたいと思っていますが、それは仕事をする、PHPがサーバー側になるかもしれません – umar

+0

私はそれに何かを追加しました。または警告? – moe

+0

ええ、私は同じコードを入れましたが、希望はありません – umar

関連する問題