我有三个运行相同PHP脚本的文本输入框。 PHP脚本检查每个是否为空并生成搜索结果页面。问题是,脚本获取第一个已满的输入框。例如,如果我填写A然后B然后在B处于活动状态并且是最新填充的情况下运行搜索,则返回A的结果。如果我填写A然后填写A,然后填写C,则填写相同的问题。
我一直在努力找到一种方法来获得正确的搜索,而不必依赖于拆分脚本并将每个单独的脚本附加到单独的输入框,因为稍后进行更改会很麻烦。
答案 0 :(得分:0)
将onfocus
事件附加到记录哪个框处于活动状态的每个框中。然后,将onsubmit
附加到表单,以检查最后一个活动的框。将其他两个空白,然后提交表单。像这样(未经测试):
<强> HTML:强>
<form action="phpscript.php" onsubmit="checkLastActive();">
Input 1: <input type="text" name="box1" id="box1" onfocus="lastActive=this.id"><br>
Input 2: <input type="text" name="box2" id="box2" onfocus="lastActive=this.id"><br>
Input 3: <input type="text" name="box3" id="box3" onfocus="lastActive=this.id"><br>
<input type="submit">
</form>
<强> JavaScript的:强>
var lastActive="";
function checkLastActive() {
for (var i=1; i<4; i++) {
if (lastActive != "box" + i) document.getElementById("box" + i).value="";
}
}