创建open tr和td jquery

时间:2014-06-12 09:38:14

标签: javascript jquery html

我在将javascript中的内联html转换为jquery时遇到了问题。

我想避免使用内联脚本,因此firebug不会在一行中显示整个脚本,而是保留格式。

基本上我现在有这个:

var zeile2 = $("<tr id='wle_focusout_"+paramDataObject.id+"'>" +
        "<td><input id='wle_input_seconds_"+paramDataObject.id+"' type='text'/> </td>" +
        "<td><input id='wle_input_height_"+paramDataObject.id+"' type='text'/> </td>" +
        "<td><input id='"+get_waterlevelevent_del_btn_name(paramDataObject.id)+"' type='button' value='"+languagebox.editor_wleRemoveBtn_header+"'/> </td>" +
        "</tr>");

一个有3个tds的tr,每个td都有一个输入元素。

到目前为止,我自己转换了每个元素:

var wleFocusOut = $(document.createElement('tr')).attr({
       id:      'wle_focusout_'+paramDataObject.id,
       });

var wleInputSec = $(document.createElement('input')).attr({
       id:      'wle_input_seconds_'+paramDataObject.id,
       type:    'text'
       });

var wleInputHeight = $(document.createElement('input')).attr({
       id:      'wle_input_height_'+paramDataObject.id,
       type:    'text'
       });

var wleDelBtn = $(document.createElement('input')).attr({
       id:      get_waterlevelevent_del_btn_name(paramDataObject.id),
       value:   languagebox.editor_wleRemoveBtn_header,
       type:    'button'
       });

var wleTempTd = $(document.createElement('td'));

然而,这些jquery元素已关闭(没有正文内容)。

如何用jquery创建一个open()版本,允许我添加(只是追加?)tds等?

1 个答案:

答案 0 :(得分:0)

我找到了解决方案:

var zeile2 = 
    $('<tr/>', {'id':'wle_focusout_'+paramDataObject.id}
    ).append(
            $('<td/>').append(
                    $('<input/>',{
                        'id': 'wle_focusout_'+paramDataObject.id})
                    )
    ).append(
            $('<td/>').append(
                    $('<input/>',{
                        'id': 'wle_input_seconds_'+paramDataObject.id,
                        'type': 'text'})
            )
    ).append(
            $('<td/>').append(
                    $('<input/>',{'id': 'wle_input_height_'+paramDataObject.id,
                        'type': 'text'})
            )
    ).append(
            $('<td/>').append(
                    $('<input/>',{'id': get_waterlevelevent_del_btn_name(paramDataObject.id),
                        'value':    languagebox.editor_wleRemoveBtn_header,
                        'type': 'button'})
            )
    );

使用这种不同的语法,它确实有效,而firebug不会假设这个内联脚本。

相关问题