我想在"输入"键中提交表单值。我现在有一个按钮搜索来提交值值。但我想在没有搜索按钮的情况下进行输入键。
html
<input class="stxt" type="text" name="searchtxt"><a style="padding-right:2ex;"></a>
<button name="search" class="search">Search</button></p>
php
if(isset($_REQUEST['search']))
{
$search=$_REQUEST['searchtxt'];
some code here
}
尝试下面的代码它将起作用。我只编码了没有按钮。
<?php
if(isset($_POST['search']))
{
echo $search = $_POST['search'];
}
?>
<html>
<head>
<script>
document.onkeydown=function(evt){
var keyCode = evt ? (evt.which ? evt.which : evt.keyCode) : event.keyCode;
if(keyCode == 13)
{
//your function call here
document.test.submit();
}
}
</script>
</head>
<body>
<form name="test" action="#" method="POST">
<input type="text" name="search" />
</form>
</body>
</html>
如果我理解正确,您希望在每次按键时触发 php 代码,在这种情况下,好的解决方案将使用 AJAX。
$( "#target" ).keypress(function(e) {
$.ajax({
url: "logic.php",
type: post,
data: $('form').serialize(),
success: function( data ) {
//Process data received from server.
}
});
});
每次按键时,所有表单数据都将被序列化并发送到服务器,您可以在其中执行逻辑。
该按钮应该在Enter
提交,如果不是,则 HTML 中有一些您没有提供的内容。您已经用JQuery标记了问题,但没有提供任何代码,所以我只能假设您仅通过PHP提交表单。
查看按钮文档。那里有两段与您的情况相关。
表单 HTML5
与按钮关联的表单元素(其表单所有者)。属性的值必须是 元素。如果此属性不是 指定,元素必须是表单的后代 元素。此属性使您能够放置元素 文档中的任意位置,而不仅仅是其后代 元素。
这意味着要使按钮提交表单,它必须位于form
标记内。如果不是,则需要像这样指定表单 ID。
<button form="form_id">
第二条相关信息。
类型
按钮的类型。可能的值为:
提交:该按钮将表单数据提交到服务器。如果未指定属性,或者属性为 动态更改为空值或无效值。
重置:该按钮将所有控件重置为其初始值。
按钮:该按钮没有默认行为。它可以具有与元素事件关联的客户端脚本,这些脚本在以下情况下触发 事件发生。
由于type
默认为 submit
,这意味着表单将使用Enter
密钥提交。