jquery改变div文本

40 jquery

'<div id="'+div_id+'" class="widget" style="height:60px;width:110px">\n\
            <div class="widget-head ui-widget-header" style="cursor:move;height:20px;width:130px">'+
         '<span id="'+span_id+'" style="float:right; cursor:pointer" class="dialog_link ui-icon ui-icon-newwin ui-icon-pencil"></span>'  +
          dialog_title+'</div></div>
Run Code Online (Sandbox Code Playgroud)

我有一个使用上面的字符串构造的div.经过一些处理..我必须更改上面div中的dialog_title.我正在尝试使用以下代码

$('#'+div_id+' .widget-head').text("new dialog title");
Run Code Online (Sandbox Code Playgroud)

这会更改对话框标题..删除用于打开对话框的span元素.

我尝试使用带有新对话框标题的字符串替换该方法.但是显示NaN的标题和跨度虽然可见不能被点击(事件被禁用?)

如何更改文本而不会丢失跨度和单击它的能力.

提前致谢.

gub*_*bby 83

把标题放在自己的范围内.

<span id="dialog_title_span">'+dialog_title+'</span>
Run Code Online (Sandbox Code Playgroud)
$('#dialog_title_span').text("new dialog title");
Run Code Online (Sandbox Code Playgroud)

  • +1更好,将标题放在标题标记中:$('#'+ div_id +'> h2').text('foo')' (3认同)

Mar*_*rau 5

我认为这会做:

$('#'+div_id+' .widget-head > span').text("new dialog title");
Run Code Online (Sandbox Code Playgroud)