首页 > 解决方案 > 单击按钮清除表单

问题描述

我正在尝试通过反应清除表单 onClick。事件触发,但是当我尝试将 setState 设置为“”时,它告诉我无法设置未定义的状态。

我尝试通过多种方式将状态设置为空。

onHandleChange(e) {
this.setState({
input: e.target.value
});
}

clearForm(e) {
e.preventDefault();
const input = this.state.input;
console.log("input", input);
this.setState({
  input: ""
});
}

我也尝试过内联,使用onClick={(this.form.elements["text-input"].value = "")}.

<button
  className="reset btn btn-danger"
  type="reset"
  id="resetInput"
  value="reset"
  onChange={this.onHandleChange}
  onClick={this.clearForm}
>
  Reset
</button>

我的预期输出是输入的值应该是什么。空字符串。但是,这没有发生......我没有重置状态。

标签: javascriptreactjs

解决方案


试试这个代码

<script>
    $(document).ready(function(){
        $('#btnClear').click(function(){                
            if(confirm("Want to clear?")){
                /*Clear all input type="text" box*/
                $('#form1 input[type="text"]').val('');
            }                   
        });
    });
</script>

推荐阅读