绑定输入值未出现在请求中

kei*_*ah7 7 html javascript laravel alpine.js

我正在尝试将backAfterSaveStatus值绑定到隐藏输入,由于某种原因,提交的表单backAfterSave值为空。之后我回去再次提交表单 -backAfterSave值是1。问题出在哪里?我没有尝试过同样的事情preventsubmit()但它仍然无法正常工作。此外,我已经转储了 div,x-text并且代码在提交表单之前将隐藏输入设为 1。我做错了什么?

<form action="<...>" method="post">
    <div x-data="{
        backAfterSaveStatus: '',
        backAfterSave () {
            this.backAfterSaveStatus = '1';
            document.querySelector('form.withBackAfterSave').submit();
        }
    }">
        <input name="backAfterSave" :value="backAfterSaveStatus">
        <div>
            <span>
                <button x-on:click.prevent="backAfterSave()" type="submit">
                    Save & back
                </button>
            </span>
            <span>
                <button type="submit">
                    Save
                </button>
            </span>
        </div>
    </div>
</form>
Run Code Online (Sandbox Code Playgroud)

我想要与下面相同的结果:

let buttonBackAfterSave = document.getElementById('button-back-after-save');

if (buttonBackAfterSave) {
    buttonBackAfterSave.addEventListener('click',  () => document.getElementById('input-back-after-save').value = 1);
}
Run Code Online (Sandbox Code Playgroud)

kei*_*ah7 0

刚刚发布,我可以使用带有自定义名称和给定值的简单按钮。不需要 JavaScript :)

<button type="submit" name="back-after-submit" value="1">Save</button>
Run Code Online (Sandbox Code Playgroud)