点击函数后清除/重置变化功能

3
我正在使用change来处理输入,然后我会提问。我的所有代码都在click函数内。我想让用户再次回答问题,但以前的数据不应该存在。我对jquery很陌生,所以不确定清除函数应该在click函数内还是外部。我看到了很多关于这个问题的答案,但它们没有帮助我。我添加了一个fiddle,只是为了让您了解我正在尝试做什么。我缩短了它,只是为了让您了解我正在做什么,所以可能有些问题。

http://jsfiddle.net/46tYs/6/embedded/result/

$('.myOptions').change(function () {
  $('.list').removeClass('active');
  $('.' + this.value).addClass('active');
});

$('#butt').click(function () {
  var ttta = $('.myOptions').val();
  var tt = $('input[name=gender]:checked').val();
});

我的 html 代码:

<label>Please select an option :</label>
<select class="myOptions">
  <option value="" selected>Pick an option</option>
  <option value="owner">yes</option>
  <option value="not-owner">no</option>
</select>
1个回答

0

我觉得你的目标不太清楚。根据你的重置按钮点击代码,似乎你在尝试移除单选按钮和下拉菜单中的“checked”和“selected”?以下是相关信息:

“checked”属性值不会随复选框状态而改变,而“checked”属性会。因此,确定复选框是否被选中的跨浏览器兼容方法是使用该属性:

这里是API文档,解释了两者之间的区别:

http://api.jquery.com/attr/

http://api.jquery.com/prop/

这是我为您编写的一个示例,展示了获取值和重置字段的基础知识:

http://jsfiddle.net/SbB3k/

这是您代码的重写版本,虽然没有进行优化,但我认为要好得多:

http://jsfiddle.net/46tYs/10/

如何重置单选按钮和选择框的方法

以下是关键点:

$('input[type="radio"]').prop('checked', false).val("");
$('select').prop('selectedIndex',0);
$('input[type="text"]').val("");

我的目标是清除输入,让他们回答我提出的问题,如果他们想再次回答,就让他们再做一遍。如果我要重新回答他们,我必须删除所有的答案或离开页面并返回。 - Phil Famme
我的代码清除单选按钮和选择选项。你还需要什么? - carter
如果您选择了第一个选项“是”,并用数字回答。然后点击重置,它不会清除。http://jsfiddle.net/46tYs/8/embedded/result/ - Phil Famme
我以为你可以自己解决那个问题,但是我添加了最后一行代码来处理文本输入。 - carter
我可能比你想象的要新手很多,哈哈。我还没有让它工作起来。 - Phil Famme
显示剩余3条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接