0

我的网站允许用户发布和编辑这些帖子。

当用户想要编辑一个帖子时,我创建一个带有“textarea”的“div”和一个带有 jquery 的“保存”按钮,然后我将用户在他的帖子中的任何内容加载到“textarea”中。

var textarea = $('<textarea></textarea>');
textarea.attr({
            rows:"2", 
            cols:"56",
            type:"text",
            id:"textedit",
            name:"text"
        });
textarea.text(post_content);
textarea.appendTo(div2);

var save_button = $('<button></button>');
    save_button.attr({
                id:"editChirp",
                value:"Post"
                });

        save_button.text("Save");
        save_button.addClass('button');
        save_button.appendTo(div2);

我的按钮的jquery事件处理程序如下:

save_button.click(function () {
            var temp = $('#textedit').val();
            alert(temp);
}); 

问题是临时变量没有更新,它保持与第一次更新帖子相同的值。

4

1 回答 1

0
    save_button.click(function () {
                var temp = $(this).siblings('textarea.myPostText').eq(0);
// eq(0) returns the first sibling found.
                alert(temp.val());
    }); 

与兄弟姐妹一起取样。给定一个固定的结构,你可以只查询按钮的兄弟,它应该总是只返回一个文本区域。然后限制是您可能需要更改结构以提供所需的唯一性

这是一个小提琴:http: //jsfiddle.net/GUsDg/3/

于 2013-10-15T22:21:04.337 回答