0
私は2つの列を含むdataTableを作成しています。最初の列には名前のリストが含まれ、2番目の列には各名前に対する空のテキストボックスが含まれます。これらのテキストボックスは動的に作成されます。私は、各テキストボックスのIDを動的に生成したい。私は次のコードで試しました:JavaScriptを使って動的にテキストボックスとそのIDを生成する
jQuery("#table_projection_value").dataTable({
"sAjaxSource": "includes/inc-projection-db.php?mode=projection_dataTable",
"bDestroy": true,
"bPaginate": false,
"bInfo": false,
"bFilter": false,
"bSort": false,
"aoColumnDefs": [
{
"aTargets": [0],
"mRender": function(data, type, row) {
return data + '<input type="hidden" class="user_id" name="user_id[]" id="user_id" value="' + row[4] + '">';
}
},
{
"aTargets": [1],
"mRender": function(data, type, row) {
return '<input type="text" class="form-control text-right projected_value" name="projected_value[]" id="projected_value_' + row[4] + '_' + data + '" onchange="change();">';
}
}
]
});
jQuery("#table_projection_value").on("draw.dt", function(){
jQuery("#projected_value").each(function(i, e){
//var controlid = "#" + jQuery(this).prop("id");
//alert(controlid);
//var arr = controlid.split("_");
$'<span></span>'),{
"class": "arr",
"id": "id_" + i
}).appendTo(this);
});
});
しかし、事実ですが、私は各テキストボックスのIDを定義されていません。だから、どうすればいい?私はこれに新しいです。 This is what I get as id for the text box.
私は[4]の行が有効な値であるかどうかわかりません。代わりにどのような価値を提供するのか分かりません。有効な価値と答えを私に提供できますか?私はこの例を書いた。 –
私は本当にあなたが何を望んでいるか分かりませんが、コードを動作させたい場合は、少なくとも5つの値を持つrowという名前の配列が必要です。 これはあなたが使用できる:var row = ['one'、 'two'、 'three'、 'four'、 'five']; ' – Madalinul
これは私が望むものです:私は2つの列。最初の列にはデータベースから取得した名前のリストが、2番目の列にはテキストボックスが含まれています。各名前に対して空のテキストボックスが表示されます。 1つのテキストボックスに値を入力した後、別のテキストボックスにカーソルを置いて値を入力すると、その名前とそのIDの値がデータベースに保存されます。また、その値を編集すると、更新され、新しいものとして挿入されるべきではありません。私の必要条件はありますか? –