总之,直截了当。我需要一些帮助,让我的表单提交按钮清除输入字段,并发送键入的信息。不是很详细,对吧?
下面是一个例子。字段中的人员类型。人员单击提交。提交的信息随后在一个新的选项卡中打开。然后刷新带有输入字段的原始选项卡以删除输入字段中的文本。
这是我当前的表单。我尝试实现javascript。它在点击时删除了信息,但没有将信息发送给处理程序。你能告诉我怎么修吗?
<form class="form-inline" role="form" method="post" target="_blank" action="derp.php">
<input id="banfix" type="text" name="player" class="form-control" placeholder="Player Username">
<button type="submit" class="btn btn-default" onclick="document.getElementById('banfix').value='';return false;">Search</button>
</form>
我不介意使用php或javascript。我只需要知道如何解决我的问题。
使用jquery:
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script type="text/javascript">
$(function(){
//clear data
$('.form-inline').on('submit','.form-inline',function(){
var value = $("#banfix").val();//now you have the value
$("input[type=text], textarea").val("");
});
});
</script>
可以在提交后重置表单
$(".myform")[0].reset();
使用onsubmit()
,当用户点击按钮或只需按enter 时,它就会工作
<form class="form-inline" role="form" method="post" target="_blank" action="derp.php" onsubmit="document.getElementById('banfix').value='';">
<input id="banfix" type="text" name="player" class="form-control" placeholder="Player Username">
<button type="submit" class="btn btn-default">Search</button>
</form>
您可以在提交表单后在derp.php文件中打开新窗口。
<?php
$banfix = $_POST['banfix'];
$new_url = "YOUR_URL_HERE?fix=".$banfix;
echo "<script type='text/javascript'>window.open('".$new_url."','_blank');</script>";
http_redirect('YOUR_FORM_URL_HERE');
die();
?>
<form class="form-inline" role="form" method="post" target="_blank" action="derp.php">
<input id="banfix" type="text" name="player" class="form-control" placeholder="Player Username">
<button type="submit" class="btn btn-default" onclick="setTimeout(function() {
document.getElementById('banfix').value='';return false;
}, 100);">Search</button>
</form>
我在onclick中添加了一个设置超时功能。我的问题是,发送的信息在发送之前就被清除了。所以我设置了一个100刻度的超时,这样信息就可以先发送了3