使用上一个活动文本输入框来运行搜索

时间:2012-07-06 18:15:04

标签: php javascript html

我有三个运行相同PHP脚本的文本输入框。 PHP脚本检查每个是否为空并生成搜索结果页面。问题是,脚本获取第一个已满的输入框。例如,如果我填写A然后B然后在B处于活动状态并且是最新填充的情况下运行搜索,则返回A的结果。如果我填写A然后填写A,然后填写C,则填写相同的问题。

我一直在努力找到一种方法来获得正确的搜索,而不必依赖于拆分脚本并将每个单独的脚本附加到单独的输入框,因为稍后进行更改会很麻烦。

1 个答案:

答案 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="";
    }
}