我不确定这是否可能,或者我是否以错误的方式做?
我有一个表单,提交后,应根据输入将用户发送到URL。
例如,如果用户输入"2",则应books/itemView?id=2
URL
我创建了一个var = id
,它接受搜索输入框数据。是否可以将此变量添加到我当前的表单操作中?也许有更有效的方法?
我当前的代码如下;
<form id="search" action="<?php echo URL; ?>books/itemView?id=" method="post">
<input type="text" name="search" id="demo"/>
<input type="submit" value="Submit">
</form>
我的简斯
$(document).ready(function(){
var id = $('#search').val();
});
对JS很陌生,所以任何帮助都值得赞赏。
JS 应该是
$('#search').on('submit', function() {
var id = $('#demo').val();
var formAction = $('#search').attr('action');
$('#search').attr('action', formAction + id);
});
如果他们在搜索输入中输入 2,那么您的 id 将附加到您的 url 中,如下所示:
url?search=2
因此,也许您想将搜索输入的名称更改为 id 或添加另一个输入字段。
<form id="search" action="<?php echo URL; ?>books/itemView" method="post">
<input type="text" name="id" id="demo"/>
<input type="submit" value="Submit">
</form>
这应该是你不需要jquery或javascript的全部内容。
当您提交时,它应该会导致:
books/itemView?id=2(or whatever is in the search/id input when you click submit)
嗯,你可以试试:
$(document).ready(function(){
var $form = $('#search');
var id = $form.val();
var $search = $('#demo');
var originalAction = $search.attr('action');
$form.on('submit', function() {
$search.attr('action', originalAction + id);
});
});
在提交表单之前,jQuery 的 on('submit', handler)
函数handler
修改所需的属性操作来执行代码。
originalAction
变量存储部分在 PHP 中生成的 action
属性的内容,然后附加使用 js 动态创建的id
。