使用带有 document.getElementById 的 onload 来填写 HTML 表单

Using onload with document.getElementById to fill HTML form

我在 Javascript 中有以下用于贝宝付款的代码 -

onApprove: function(data, actions) {
    return actions.order.capture().then(function(details) {
    window.location.replace("www.mysite.com/success");
    document.getElementById("payment_no").value='1234';
  });
},

这会在用户付款后重定向。下一页有一个带有“payment_no”字段的表单,我想在使用脚本中的值重定向后填写该字段。

目前这不起作用,我认为这是因为页面在尝试 post 值之前尚未加载。我研究过使用 onload 但只是不明白如何在此脚本中使用它。有人能帮忙吗?

这是我的 form.py 以防万一 -

class UserRegisterForm(UserCreationForm):
    email = forms.EmailField(widget= forms.EmailInput(attrs={'id':'email'}))
    payment_no = forms.CharField(max_length=50, widget= forms.TextInput(attrs={'id':'payment_no'}))

    class Meta:
        model = User
        fields = ['email', 'payment_no', 'password1', 'password2']

使用 onload 就像使用任何其他 DOM 事件一样。这是我做的一个例子

<script>
  const OnLoadFunction = () =>{
    document.getElementById('form-input').value = "1234";
  }
</script>
<body onload="OnLoadFunction();">
  <form>
    <input type="text" id="form-input"/>
  </form>
</body>

这应该会更改加载文档时输入字段的值。从代码的外观来看,您似乎正在使用一个函数来完成两项工作。我会使用两个函数,以便您可以在 www.mysite.com/success 加载

时调用一个

1:要改变页面的位置

2:操作输入字段