jQuery html在刷新时消失

时间:2012-05-05 15:53:18

标签: javascript jquery html refresh

我正在使用jQuery的<div>方法修改空.html()。当我刷新页面时,添加的代码消失。

$('#div').html($('#div').html() + '<div>'+obj.name+'&nbsp;<a href="">(x)</a>');

是否可以更改行为或使用其他方法?

感谢

编辑:

来解决我的问题

  

可能是设计错误。它是一个包含一些字段和第二种形式的表单,用户可以上传文件,在上传文件后,我在div中添加文件名和删除链接。如果用户提交表单,程序将连接创建的对象和文件。它不是一个任何人都需要刷新的页面,但它可以发生,然后文件保存在数据库中,但信息丢失以将其与表单对象连接。

3 个答案:

答案 0 :(得分:3)

当然,无论何时重新加载页面,所有元素都将返回到原始状态(从服务器加载)。但是有办法解决这个问题。

  • 使用cookies
  • 使用HTML本地存储

您必须了解客户端脚本的工作原理。修改发生在客户端的系统上,而不是在服务器上,脚本将从那里加载。

答案 1 :(得分:2)

你应该创建一个函数:

function doMyStuff(){    
     //your code here    
}
doMyStuff();   // that will be triggered on DOM ready // page refresh, whateva'

$('#element').on('click',function(){
    doMyStuff(); // you call your function on click
});

答案 2 :(得分:0)

我真的不明白你在这里做了什么,但你可以把你想要的链接放在HTML页面本身的#div p a中。然后,如果您想在用户单击按钮时更改该行代码,则可以使用CSS执行此操作。

具体来说,就像这样:

<div>
  <p><a id="example" href="www.example.com">Example</a></p>
</div>

如果说,用户点击一个按钮(onClick()...)

$('div p a#example').html(//what you want to do here);

这应该可能会改变代码。

这样,当您等待客户端先行动时,您的浏览器不会在HTML中显示空白点。