Colorbox元素保留旧价值

时间:2013-06-14 05:11:03

标签: jquery colorbox

我正在尝试使用colorbox创建一个模态窗口,通过将textarea放在颜色框中来更改报告标题,如下所示。

<a class="change-report-title" href="#edit-box">Change Title</a>

jquery的:

$(".change-report-title").colorbox({
    inline:true, 
    width:"400px",
    onOpen:function(){  
        var current_title = $("#report-title").html();
        $("#title-box-text").html(current_title);
    }
});

HTML:

   <div style="display:none">
       <div id="edit-box"> 
       Edit Report Title<br />
       <textarea id="title-box-text" name="title-box-text" cols="38" rows="5"></textarea>
       <br />
       <input id="title-box-change" name="title-box-change" type="button" value="Update" />
       </div>
   </div>

我在加载colorbox时尝试获取报告标题,但它运行正常 现在尝试使用编辑后的textarea值更新标题,textarea继续返回第一个值。

$("#title-box-change").click(function (e) {
    var new_title = $("#title-box-text").html();
    $("#report-title").html(new_title);
    return false;
});

有些东西我不仅仅是正确的,我用Google搜索并搜索了stackoverflow。 任何想法将不胜感激。感谢。

1 个答案:

答案 0 :(得分:1)

使用val()功能代替html()。如果你需要获取/设置文本(而不是html标记),最好使用text()方法而不是html()。

代码的第一部分:

var current_title = $("#report-title").text();
                                      ^^^^^^^
$("#title-box-text").val(current_title);
                     ^^^^

对于点击事件:

$("#title-box-change").click(function (e) {
    var new_title = $("#title-box-text").val();
                                       ^^^^^^^^^
    $("#report-title").text(new_title);
                       ^^^^^
    return false;
});