我有一个简单的搜索字段:
<form id="searchForm" action="">
<input type="text" name="searchField" id="searchField" value="">
</form>
我已尝试过多种变体(related link):
<script>
$('#searchField').keypress(function (e) {
if (e.which == 13) { // hit enter
$('#searchForm').submit(function(){
var val = $('#searchField').val();
this.action = "index.php?g="+genre+"&s="+val;
return false;
});
}
});
</script>
和此:
<script>
$('#searchField').keypress(function (e) {
if (e.which == 13) { // hit enter
var val = $('#searchField').val();
$('#searchForm').attr("action","index.php?g="+genre+"&s="+val);
$('#searchForm').submit();
return false;
}
});
</script>
但我无法将页面(操作)指向所需的页面。即使我尝试在外部设置操作(例如:Google.com),它也不会将我发送到那里。我错过了什么?类型变量以前声明为btw。
此外,我知道它需要验证 - 只是试图让它先工作。
由于
答案 0 :(得分:1)
<form id="searchForm" action="" method="post" >
<input type="text" name="search" id="searchField" value="">
</form>
<script>
$(function(){
$('#searchField').keypress(function (e) {
if (e.which == 13) {
var genre = 'test';
var val = $('#searchField').val();
$('#searchForm').attr("action","index.php?g="+genre+"&s="+val);
$('#searchForm').submit();
return false;
}
});
});
</script>
立即尝试...我已经更改了表单方法,现在可以正常发布它。
答案 1 :(得分:0)
你应该采用第二种方法。但是你必须在Jquery的document.ready函数中提供你的脚本。
<script>
$(document).ready(function(e) {
$('#searchField').keypress(function (e) {
if (e.which == 13) { // hit enter
var genre = 'abcd';
var val = $('#searchField').val();
$('#searchForm').attr("action","index.php?g="+genre+"&s="+val);
$('#searchForm').submit();
return false;
}
});
});
</script>