todolistチュートリアルを完了しました。 フォームを送信するときに入力フィールドがクリアされません。両方を試した後vuejs形式の入力をクリアする
:
document.getElementById("todo-field").reset();
document.getElementById("#todo-field").value = "";
入力フィールドが適切にクリアされますが、それはまた、TODOを削除します。
todos.text配列の新しいtodoをプッシュする時間がある前に、入力フィールドを削除したようです。
一部の人が大好きです!ありがとう!!
<template>
<form id="todo-field" v-on:submit="submitForm">
<input type="text" v-model="text">
</form>
<ul>
<li v-for="todo in todos">
<input class="toggle" type="checkbox" v-model="todo.completed">
<span :class="{completed: todo.completed}" class="col-md-6">
<label @dblclick="deleteTodo(todo)">
{{todo.text}}
</label>
</span>
</li>
</ul>
<script>
export default {
name: 'todos',
data() {
return {
text: '',
todos: [
{
text:'My Todo One',
completed: false
},
{
text:'My Todo Two',
completed: false
},
{
text:'My Todo Three',
completed: false
}
]// End of array
}
},
methods: {
deleteTodo(todo){
this.todos.splice(this.todos.indexOf(todo),1);
},
submitForm(e){
this.todos.push(
{
text: this.text,
completed: false
}
);
//document.getElementById("todo-field").reset();
document.getElementById("#todo-field").value = "";
// To prevent the form from submitting
e.preventDefault();
}
}
}
</script>
ありがとうRashadd !!!!それはawesomeeeだ! – Tony
@TonyRositano:どうぞよろしくお願いいたします。それが本当にうまくいったら答えを受け入れることができますか?ありがとう。 –
@トニーRositano: ようこそスタックオーバーフロー。 ここで「感謝」と言われるのが好ましい方法は、 上向きの良い質問と役立つ回答(十分な回答を得たら )と、 質問に最も役立つ回答を受け入れることです(これにより、評判が少し向上します)。つまり、答えを受け入れる場合は、答えの左側にあるチェックマークをクリックしてください。 –