当前位置: 首页 > 面试题库 >

使用jQuery清除

陈博容
2023-03-14
问题内容

是否可以<input type='file' />使用jQuery 清除控件值?我尝试了以下方法:

$('#control').attr({ value: '' }); 

但这不起作用。


问题答案:

简易:<form>将元素包裹起来,在表单上调用reset,然后使用删除表单.unwrap()。与.clone()线程中不同的解决方案不同,你最终得到的是同一元素(包括在其上设置的自定义属性)。

经过测试并可以在Opera,Firefox,Safari,Chrome和IE6 +中运行。也适用于其他类型的表单元素,但除外type="hidden"

window.reset = function(e) {
  e.wrap('<form>').closest('form').get(0).reset();
  e.unwrap();
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<form>
  <input id="file" type="file">
  <br>
  <input id="text" type="text" value="Original">
</form>

<button onclick="reset($('#file'))">Reset file</button>
<button onclick="reset($('#text'))">Reset text</button>

JSFiddle

如下面的Timo所述,如果你有按钮来触发重置内部的字段,则<form>必须调用.preventDefault()该事件以防止<button>触发提交。

编辑
由于未修复的错误,因此无法在IE 11中运行。文本(文件名)在输入中被清除,但其File列表仍被填充。



 类似资料:
  • 问题内容: 我想清除表单中的所有输入和textarea字段。在类中使用输入按钮时,其工作原理如下: 这将清除页面上的所有字段,而不仅仅是表单中的字段。对于实际的“重置”按钮所处的形式,我的选择器将如何显示? 问题答案: $(“.reset”).click(function() { $(this).closest(‘form’).find(“input[type=text], textarea”).

  • 本文向大家介绍使用jquery清空、复位整个输入域,包括了使用jquery清空、复位整个输入域的使用技巧和注意事项,需要的朋友参考一下 在web开发中,我们经常会遇到重置所有输入框的情况。 比如在查询时,会给用户提供一个“重置”按钮来清空所有输入框内的输入的文本。 这时使用jquery就可以统一清空(复位)。 上述代码使用了jquery选择器取得了整个输入框的父级元素,并使用find找到该元素下的

  • 问题内容: 我正在尝试将CS​​V文件读入(字符串的)列表列表,将其传递以从数据库中获取一些数据,构建新数据列表的新列表,然后传递该列表列表,以便写入新的CSV文件。我到处都看了,似乎找不到如何做的例子。 我宁愿不使用简单的数组,因为文件的大小会有所不同,而且我也不知道该如何使用数组的尺寸。我没有处理文件的问题。我只是不确定如何处理列表列表。 我发现的大多数示例都将创建多维数组或在从文件中读取数据

  • 我正在学习一些Java课程,老师开始介绍IO在Java中的工作方式。我只是有几个问题,一个有经验的Java程序员可以澄清。 下面的代码段是一个程序,它在我正在编写代码的同一个文件目录中创建一个(记事本)文本文件。之后,它只需将基本的文本行打印到该文件中。 问题1:由于老师只是简单的解释,这行代码对我来说有点困惑。我知道在这一行中,我们正在创建“outfile”对象。之后,我们调用PrintWrit

  • 问题内容: 如何使用JavaScript删除当前域的所有cookie? 问题答案: 请注意,此代码有两个限制: 它不会删除设置了标志的cookie ,因为该标志会禁用Javascript对cookie的访问。 它不会删除已设置值的cookie 。(尽管这些cookie会出现在中,但您必须在未指定与它相同的值的情况下将其删除。)

  • 我有一个文本字段,当用户插入一定数量的字符时,程序应该将其放入JTable并清除文本字段,但它会为