首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >jQuery函数清除表单并设置回onLoad状态

jQuery函数清除表单并设置回onLoad状态
EN

Stack Overflow用户
提问于 2010-10-06 20:14:56
回答 3查看 3K关注 0票数 0

对于我的jq驱动的表单,我正在寻找一个函数,它可以清除我的表单,并将其设置回页面加载时的原始阶段,但不会刷新整个页面。我使用占位符文本,并创建了一个标准的重置按钮。在webkit浏览器中,它工作得很好。如果点击reset按钮,表单将返回到原始状态,显示占位符文本,但在IE (当前使用8)中,表单将被清除,但占位符文本不会返回。你知道我如何才能清除表单,但又能找回我的占位符文本(我使用placeholder.js插件来做这件事)吗?我尝试了以下方法,但不起作用:

代码语言:javascript
运行
复制
$("#refresh").click(function() {
    $('#name, #email, #betreff, #nachricht').val('');
});

外面有什么帮助吗?

编辑

指向占位符插件的链接:http://github.com/mathiasbynens/Placeholder-jQuery-Plugin

...and是的,我现在说的是在jquery的帮助下实现它,因为它不能用一个标准的html重置按钮来完成。我的意思是它可以,但不能在IE中。IE清除窗体,不再显示占位符文本。Webkit浏览器可以很好地使用标准的重置按钮,再次显示占位符文本。现在我正在寻找一种解决方案,让它在所有浏览器中都有相同的方式。

EN

Stack Overflow用户

回答已采纳

发布于 2010-10-06 21:07:12

使id=“刷新”只是一个标准按钮,而不是清除整个表单。您必须通过以下功能手动“重置”使用占位符的表单元素:

代码语言:javascript
运行
复制
$("#refresh").click(function() {
    $('#name, #email, #betreff, #nachricht').val('').placeholder();
});

您必须使用val(‘’)清除非占位符元素;

您还可以尝试一种更通用的方法,即使用placholder属性选择所有相关的表单元素(假设您在HTML中或在此脚本运行之前执行了此操作):

代码语言:javascript
运行
复制
$("#refresh").click(function() {
    $("input[placeholder],textarea[placeholder]").val('').placeholder();
});

这应该会替换所有的input/textarea元素,所以其他任何元素都必须添加到选择器中。

票数 1
EN
查看全部 3 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3872272

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档