Javascript 将文本框值附加到表单操作url
我有一个搜索表单,我需要将关键字传递到URL中。我知道使用GET方法要容易得多,但由于某种原因,当我使用它时,什么都不会发生。它不会移动到操作URL。但是POST方法对我很有效 因此,我需要做的是,当用户键入关键字时,它会自动附加到表单操作URL,以便在用户提交表单时我可以获取它。我需要将其传递到URL 以下是我迄今为止所做的工作:Javascript 将文本框值附加到表单操作url,javascript,jquery,Javascript,Jquery,我有一个搜索表单,我需要将关键字传递到URL中。我知道使用GET方法要容易得多,但由于某种原因,当我使用它时,什么都不会发生。它不会移动到操作URL。但是POST方法对我很有效 因此,我需要做的是,当用户键入关键字时,它会自动附加到表单操作URL,以便在用户提交表单时我可以获取它。我需要将其传递到URL 以下是我迄今为止所做的工作: <script> $('#input-search').on('change', function (event) { var
<script>
$('#input-search').on('change', function (event) {
var myVal = $(this).val();
$('form').attr('action', function(i, value) {
return value + "&search=" + myVal;
});
});
</script>
<form action="http://loclahost/index.php?route=catering/search" method="POST">
<input type="text" id="input-search" name="keyword" />
<input type="submit" name="search" value="search"/>
</form>
最好使用keyup,而不是change,并抓取默认属性操作并使用它
$val = $('form').attr('action');
$('#input-search').on('keyup', function (event) {
var myVal = $val
+ "&search=" + $(this).val();
$('form').attr('action', myVal);
});
问题在于您在前一个操作中添加和搜索的每个更改urlGET查询参数不应在POST URL操作中。如果您想在POST中传递其他参数,请使用隐藏输入。我认为您应该使用AJAX调用或$.POST方法
$val = $('form').attr('action');
$('#input-search').on('keyup', function (event) {
var myVal = $val
+ "&search=" + $(this).val();
$('form').attr('action', myVal);
});