我们有一个很长的表单,有很多字段和2个不同的提交按钮。当用户点击第一个提交按钮(“照片搜索”)时,表单应该POST,我们的脚本将根据用户在第一个提交按钮旁边的文本输入(“photo_search_text”)中输入的内容搜索匹配的照片,重新加载整个表单,并将匹配的照片添加到表单中。单击表单末尾的第二个提交按钮(“保存更改”)后,它应该POST,我们的脚本应该使用用户在表单中输入的信息更新数据库。
不幸的是,表单的布局使得无法将其分成两个单独的表单。我检查了整个表单POST,不幸的是,无论单击哪个提交按钮,提交的字段都与处理表单提交的perl脚本相同,因此perl脚本无法根据推送的提交按钮来区分要执行的操作。我唯一能想到的是更新第二个提交按钮的onclick动作,以便在提交表单之前清除“photo_search_text”字段,然后仅在该字段具有值时才执行照片搜索。
基于这一切,我的问题是,当有人点击第二个提交按钮时,JavaScript的外观可以清除“photo_search_text”字段?以下是我迄今为止所尝试的一切都没有成功:
<input type="submit"
name="submit"
onclick="document.update-form.photo_search_text.value='';"
value="Save Changes"
>
<input type="submit"
name="submit"
onsubmit="document.update-form.photo_search_text.value='';"
value="Save Changes"
>
<input type="submit"
name="submit"
onclick="document.getElementById('photo_search_text')='';"
value="Save Changes"
>
我们也在网站上使用JQuery,所以如果有一种方法可以使用jQuery而不是普通的JavaScript,那么可以随意提供示例代码。最后,如果还有另一种方法可以解决这个问题,我不会考虑任何问题,欢迎提出所有建议。
提前感谢您的帮助!
答案 0 :(得分:2)
如果您为输入提供如下ID:
<input ID="nosearch" type="submit" name="submit" value="Save Changes">
你可以通过jQuery更轻松地完成它,比如:
$(function() {
$("#nosearch").click(function() {
$("#photo_search_text").val("");
});
});