Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我的javascript变量没有在jquery事件处理程序上更新_Javascript_Jquery_Html - Fatal编程技术网

我的javascript变量没有在jquery事件处理程序上更新

我的javascript变量没有在jquery事件处理程序上更新,javascript,jquery,html,Javascript,Jquery,Html,我的网站允许用户发布和编辑这些帖子 当用户想要编辑帖子时,我创建了一个带有“textarea”的“div”和一个带有jquery的“save”按钮,并将用户帖子中的内容加载到“textarea”中 问题是temp变量没有更新,它保持与post第一次更新时的值相同 save_button.click(function () { var temp = $(this).siblings('textarea.myPostText').eq(0); // eq(0)

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

当用户想要编辑帖子时,我创建了一个带有“textarea”的“div”和一个带有jquery的“save”按钮,并将用户帖子中的内容加载到“textarea”中

问题是temp变量没有更新,它保持与post第一次更新时的值相同

    save_button.click(function () {
                var temp = $(this).siblings('textarea.myPostText').eq(0);
// eq(0) returns the first sibling found.
                alert(temp.val());
    }); 
与兄弟姐妹一起取样。给定一个固定的结构,您可以只查询按钮的同级,它应该总是只返回一个textarea。然后,限制是您可能需要更改结构以提供所需的唯一性


这里有一个小问题:

每次调用click事件时都重新声明变量。您需要一个闭包/全局范围变量来更改。它不应该是
textarea.val(post_content)?@KnowHowSolutions谢谢您的回复。我尝试在事件外部声明变量,只在事件内部更新,但仍然没有work@YuriyGalanter不,因为post_内容是他最初拥有的,$(“#textedit”).val()是他更新帖子的内容。我仍然没有完全理解您试图实现的内容。它会提醒我[object]
save_button.click(function () {
            var temp = $('#textedit').val();
            alert(temp);
}); 
    save_button.click(function () {
                var temp = $(this).siblings('textarea.myPostText').eq(0);
// eq(0) returns the first sibling found.
                alert(temp.val());
    });