Календарь Tigra и Javascript DOM - Как мне прикрепить? - PullRequest
0 голосов
/ 04 марта 2011

Хорошо, мой вопрос заключается в следующем.Я добавляю строки в таблицу динамически, используя DOM, и все идет очень хорошо.Однако в одну из ячеек мне нужно добавить этот календарь: http://www.softcomplex.com/products/tigra_calendar/ Когда я выполняю код для добавления календаря, он будет создаваться там, где я его размещаю, и связываться со всем.Что я хочу сделать, так это прикрепить этот календарь к ячейке и выполнять его всякий раз, когда узлы входят в таблицу.Это код:

function addpago()
{
var i = 0;
//Create a select
var cuota=document.createElement('select');
cuota.name="cuota"+cantpagos;
cuota.id="cuota"+cantpagos;
for(i=1;i<=11;i++)
{
 cuota.options[i-1]=new Option("Cuota "+i, i);
}
//Create an input and add an event, this code works correctly
var monto=document.createElement('input');
monto.type='text';
monto.name=monto.id='monto'+cantpagos;
if(monto.addEventListener)
 monto.addEventListener("blur", sumpagos, false);
else if(monto.attachEvent)
 monto.attachEvent("onblur", sumpagos);
else
 monto.onblur = sumpagos;
monto.size=6;
//Create an input
var ncheque = document.createElement('input');
ncheque.type='text';
ncheque.name=ncheque.id='cheque'+cantpagos;
ncheque.size=10;
//Create a select
var bancos = document.createElement('select');
bancos.name=bancos.id='banco'+cantpagos;
bancos.options[0]=new Option("BANCO DE CHILE",1);
bancos.options[1]=new Option("BANCOESTADO",2);
bancos.options[2]=new Option("BANCO DE CRÉDITO E INVERSIONES",3);
bancos.options[3]=new Option("BANCO SANTANDER",4);
bancos.options[4]=new Option("BANCO ITAÚ",5);
//Create an input
var plaza = document.createElement('input');
plaza.type='text';
plaza.name=plaza.id='cheque'+cantpagos;
plaza.size=6;
//Create an input
var fecha = document.createElement('input');
fecha.type='text';
fecha.name=fecha.id='fecha'+cantpagos;
fecha.readOnly=true;
fecha.size=14;
//Create a tr, add several td's and attach each element created before to the child td's
row = document.createElement('tr');
cell = document.createElement('td');
cell.appendChild(cuota);
row.appendChild(cell);
cell = document.createElement('td');
cell.appendChild(monto);
row.appendChild(cell);
cell = document.createElement('td');
cell.appendChild(ncheque);
row.appendChild(cell);
cell = document.createElement('td');
cell.appendChild(bancos);
row.appendChild(cell);
cell = document.createElement('td');
cell.appendChild(plaza);
row.appendChild(cell);
cell = document.createElement('td');
cell.appendChild(fecha);
//I need to add the calendar at this point, but I can't figure out how
cell.appendChild(new tcal ({'formname': 'ingpagos', 'controlname': 'fecha'+cantpagos, 'imgpath': 'www.codesin.cl/Tigra/img/'}));
row.appendChild(cell);
document.getElementById('tabpagos').appendChild(row);
cantpagos++; //Global variable being updated
document.getElementById('cantpagos').value=cantpagos;
}

Что мне делать?Заранее спасибо ...

1 Ответ

0 голосов
/ 04 марта 2011

Я раньше пользовался Tigra Calendar.Почему вы добавляете это как узел?Это объект, который вы просто создаете, программа заботится об изменении DOM и т. Д. =)

Однако вам нужно подождать, чтобы создать его экземпляр до тех пор, пока поле ввода не станет IN DOM =)

...
row.appendChild(cell);
document.getElementById('tabpagos').appendChild(row);
new tcal ({'formname': 'ingpagos', 'controlname': 'fecha'+cantpagos, 'imgpath': 'www.codesin.cl/Tigra/img/'})

Хотя этот imgpath выглядит подозрительно, поэтому вам, возможно, придется поиграть с ним немного =)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...