ページが読み込まれたときに非表示のフォームを送信したい。フォームが非表示になっているため、送信ボタンを使用できません。では、ページがvuejsに読み込まれたときに、フォームを自動的に送信するにはどうすればよいですか?
<template>
<div v-html="this.paymentResponse"></div>
</template>
<script>
import EventBus from '../../event-bus'
export default {
data() {
return {
paymentResponse: null
}
},
mounted() {
console.log('mounted')
this.$refs.submitBtn.click();
},
beforeCreate() {
EventBus.$on("payment", response => {
this.paymentResponse = response
})
}
}
</script>
mounted
次のように送信ボタンをトリガーできます。
new Vue({
el: '#sg1',
mounted(){
this.$refs.submitBtn.click();
},
methods:{
formSumitted(){
console.log("submitted");
}
}
})
<script src="https://unpkg.com/vue/dist/vue.min.js"></script>
<div id="sg1">
<form style="display:none" v-on:submit.prevent="formSumitted">
<button type="submit" ref="submitBtn">Submit</button>
</form>
</div>
更新:
フォームはを使用して渡されてレンダリングされるため、v-html
を使用できないと思いますref
。したがって、これをに置き換え、id
vanilllaJavascript関数を使用してボタンをクリックできます。
document.getElementById("submitBtn").click();
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加