0

如何让随机发票编号显示在表单中?

我已经建立了一个 WordPress 网站,该网站将有一个捐赠表格。我不希望用户能够编辑代码,所以我添加了通过简码添加到网站。由于它是作为短代码包含的,因此我必须转义"。这可能是随机数没有取代UMinvoice值的原因吗?

我注意到 UMinvoice 的值返回value=源代码中的值,除非我添加一个空格value=\" \"

编辑:我已将其从短代码中删除并将其放在自定义模板中。所有斜线均已删除。我现在得到'未定义'不是一个对象(评估'document.getElementsByName(“UMinvoice”)[0].value = random_num')

我创建随机发票号的脚本是

<script language="JavaScript">
var d = new Date();
function f(n) { return n < 10 ? '0' + n : n; }  
var random_num = Math.floor(Math.random() * (99999999999 -  10000000000)) + 10000000000;
random_num = d.getFullYear() + f(d.getMonth()+1) + f(d.getDate()) + random_num; 
document.getElementById("invoice")[0].value = random_num;
</script>

我使用的表格是(带有发票输入的部分

<form id="donation" action="https://secureurl" method="POST">
<input type="hidden" name="UMkey" value="key" />
<input type="hidden" name="UMcustreceipt" value="yes" />
<input type="hidden" name="UMinvoice" id="invoice" value="">
4

2 回答 2

1
var rand = 10;

document.getElementsByName("UMinvoice")[0].value = rand;

见这里:http: //jsfiddle.net/P3vtD/

您将不得不去掉斜线,
这不是合法的 html 代码。

这也不是合法的 js 代码:document.form.UMinvoice.value

如果你有 jquery,它是这样的:

$('[name="UMinvoice"]').val(rand);
于 2013-10-30T06:55:24.927 回答
0
var randomnumber = Math.floor(Math.random() * (maximum - minimum + 1)) + minimum;
于 2013-10-30T06:55:30.357 回答