我正在使用codeigniter来开发我的网站。当提交表单时,Iam变量用?分隔?和&amp ;.我希望用下面的斜杠分隔变量。
现在变成这样
http://example.com/controller/method?id=22&sd=31
我想要一个如下所示的网址
http://example.com/controller/method/22/31
Html代码如下:
<form action="<?php echo base_url();?>controller/method" method="get">
<div class="form-group">
<select id="id" name="id" class="selectcl form-control" data-live-search="true" title="Pick Your place" >
<option value="22" >22</option>
</select>
</div>
<div class="form-group">
<input type="text" class="form-control" name="sd" id="sd" placeholder="Enter details" title="please choose">//getting values here by autocomplete
</div>
<div class="form-group">
<button type="submit" class="btn find" value="submit" ></i>Start </button>
</div>
</form>
尝试了URI路由及以下
$config['enable_query_strings'] = FALSE;
$config['controller_trigger'] = 'c';
$config['function_trigger'] = 'm';
请帮我找一个解决方案。
答案 0 :(得分:2)
将表单方法get
更改为post
<form id="form" action="<?php echo base_url('controller/method');?>" method="post">
在页面中添加以下jquery。
$(function(){
$('button[type="submit"]').on('click', function(e){
e.preventDefault();
var id = $.trim($('#id').val());
var sd = $.trim($('#sd').val());
if(id.length > 0 && sd.length > 0){
var url_string = new URL($('#form').attr('action'));
window.location.href = url_string.href.concat(((url_string.href.endsWith('/')) ? '' : '/'),id,'/',encodeURIComponent(sd));
}
});
});
答案 1 :(得分:1)
如果您想通过网址传递价值,请尝试以下链接: