嗨,我正在创建一个 wordpress 插件,我在这里有点堆栈。文本框编号 1 是订单号,编号 2 是订单名称。这就是我要的。如果客户在文本框 1 中输入一个数字,即订单号,则他或她输入的值将进入数据库并获取该订单号对应的订单名称。它是实时的。无需在出现之前提交。每次他们输入内容时,它都会立即检查数据库并将其显示在文本框 2(订单名称)中。我对此进行了研究并尝试在 wordpress 中使用 ajax,但我不知道如何使用。谢谢。
问问题
531 次
1 回答
0
这里有一些样板代码可以帮助您入门......
<script type="text/javascript" charset="utf-8">
var req;
function handler_orderNumberField_onchange(fld) {
var text = fld.value;
if (text.length == 8) {
queryForOrderName(text);
}
}
function queryForOrderName(orderNumber) {
document.getElementById('orderNameField').value = "Please wait..."
req = new XMLHttpRequest();
var url = "http://www.mydomain.com/getordername.php?ordernumber=" + orderNumber;
req.onreadystatechange = function() {
var field = document.getElementById('orderNameField');
var rs = this.readyState;
var status = this.status;
if (rs == 4 && status == 200) {
field.value = req.responseText;
}
};
req.ontimeout = function() {
document.getElementById('orderNameField').value = 'Timeout.';
}
req.timeout = 10000;
req.open("GET", url, true);
req.send();
}
</script>
<p>Order Number: <input type="text" name="orderNumber" value="" id="orderNumberField" onchange="handler_orderNumberField_onchange(this)"></p>
<p>Order Name: <input type="text" name="orderName" value="" id="orderNameField"></p>
注意需要自己实现一个getordername.php
脚本;例子:
<?php
$ordernr = (int) $_GET["ordernumber"];
$result = sprintf("Testorder - Order Number %d", $ordernr);
header("Content-type: text/plain; charset=UTF-8");
echo $result;
exit;
?>
于 2013-02-13T17:24:17.647 回答