Ячейка таблицы запросов - PullRequest
0 голосов
/ 24 марта 2010

Этот код создает беспорядок ... Что я делаю не так?

 cell=$("<td>");
        if(normal.exam_type=="Exam_Boolean")
        {
            var input=cell.append("<input>").last();

            input.attr("type","hidden");
            input.attr("name","exam.exam_Normal['" +normal_id_unique + "'].boolean_v");
            input.attr("value",normal.normal_boolean);               

Ответы [ 3 ]

1 голос
/ 24 марта 2010

Я бы сделал это так:

var cell = $("<td></td>");
if(normal.exam_type=="Exam_Boolean")
{
    $("<input />").attr("type", "hidden")
          .attr("name", "exam.exam_Normal['" +normal_id_unique + "'].boolean_v")
          .attr("value", normal.normal_boolean)
          .appendTo(cell);
);

[переводы строк перед точками предназначены только для удобства чтения.]

Вам также может понадобиться поместить ячейку в документ перед добавлением материала. Я не уверен

0 голосов
/ 24 марта 2010

Это зависит от того, что вы хотите, чтобы код делал. Если вы хотите добавить ввод после последнего элемента в ячейке, попробуйте:

cell=$("<td>");
if(normal.exam_type=="Exam_Boolean")
{
    var input=cell.last().after("<input>");

    input.attr("type","hidden");
    input.attr("name","exam.exam_Normal['" +normal_id_unique + "'].boolean_v");
    input.attr("value",normal.normal_boolean);
};

Если это не дает желаемого результата, возможно, вам следует опубликовать часть HTML-кода и более подробное описание того, что вы хотите, чтобы ваш код делал.

0 голосов
/ 24 марта 2010

Вместо использования cell.append(input) - который возвращает ссылку на cell - попробуйте сделать это "наоборот" как input.appendTo(cell):

var cell = $("<td>");
if(normal.exam_type=="Exam_Boolean")
{
    var input= $("<input />").appendTo(cell);
    input.attr("type", "hidden");
    input.attr("name", "exam.exam_Normal['" + normal_id_unique + "'].boolean_v");
    input.attr("value", normal.normal_boolean);
);
...