<div id="app">
<input type="text" v-on:keyup="onlyNum($event)">
</div>
<script>
new Vue({
el:"#app",
methods: {
onlyNum: function (event){
event.target.value=event.target.value.replace(/[^\d]/g,'');
}
}
})
</script>
相當於:
<div id="app">
<input type="text" onkeyup="onlyNum(this)">
</div>
<script>
function onlyNum(obj){
obj.value = obj.value.replace(/[^\d]/g,'');
}
</script>
js 原生代碼的 “this” 相當於上面vue中 “event.target” 。js中“事件綁定this”,this指的是調用該函數的html元素;但vue的this指的是vue的對象本身,屬於js對象“方法中綁定this”的情形;如果要訪問調用該函數的html元素,只能用js的event對象中的target屬性。
JavaScript this 關鍵字
注意:event是js的對象!
Event 對象代表事件的狀態,比如事件在其中發生的元素、鍵盤按鍵的狀態、鼠標的位置、鼠標按鈕的狀態。
target 事件屬性可返回事件的目標節點(觸發該事件的節點),如生成事件的元素、文檔或窗口。
