Javascript 我想在URL中像这样传递参数http://localhost/mvc/index.php/1/ASC .怎么做?
我的代码片段是Javascript 我想在URL中像这样传递参数http://localhost/mvc/index.php/1/ASC .怎么做?,javascript,php,parameter-passing,url-routing,Javascript,Php,Parameter Passing,Url Routing,我的代码片段是 <form> <input type="hidden" name="pageno" value="<?php echo $pno;?>"> <select name="sort" class="float-right ralign" onchange="this.form.submit()"> <option value="" disabled s
<form>
<input type="hidden" name="pageno" value="<?php echo $pno;?>">
<select name="sort" class="float-right ralign" onchange="this.form.submit()">
<option value="" disabled selected>--select sort--</option>
<option value="ASC">Sort by Ascending</option>
<option value="DESC">Sort by Descending</option>
</select>
</form>
目前我在格式更改时被重定向
我想在我的URL中得到这样的结果。如何做到这一点?您可以通过jquery在onchange事件中对表单操作进行修改
因此,当用户从下拉列表中选择时,您需要调用/创建onchnage方法,在该方法中,您可以根据需要对表单操作进行调整,因为在这种情况下,您已经有了必须在新url中使用的参数。您可以使用javascript像这样构建url 添加如下路径,如application/config/routes.php 例如:
$route['product/(:num)/(:num)'] = 'catalog/product_lookup_by_id/$1/$2';
您可以使用uri段来获取值
$this->uri->segment(1); // controller
$this->uri->segment(2); // action
$this->uri->segment(3); // 1stsegment
$this->uri->segment(4); // 2ndsegment
您可以调用selectbox的Ajax Onchange事件 HTML
阅读apache或nginx中url重写的相关内容,具体取决于您的服务器。和/或使用JavaScript在客户端构建您想要的url,这样您就可以避免服务器上重写会导致额外的HTTP请求。
<form method="post" id="frmsubmit">
<input type="hidden" name="pageno" value="<?php echo $pno;?>">
<select name="sort" class="float-right ralign" id="ralign">
<option value="" disabled selected>--select sort--</option>
<option value="ASC">Sort by Ascending</option>
<option value="DESC">Sort by Descending</option>
</select>
</form>
$(document).on('change','#ralign',function(){
var formdata = new FormData($("#frmsubmit")[0]);
$.ajax({
url: 'yoururl', //like insert.php or other route
type: 'POST',
data: formdata,
dataType: "json",
contentType: false,
cache: false,
processData: false,
success: function(response) {
}
});
})