Javascript 单击下拉列表元素时的Ajax请求
朋友我创建了一个下拉列表,使用下面的代码使用jsJavascript 单击下拉列表元素时的Ajax请求,javascript,ajax,codeigniter,jquery,Javascript,Ajax,Codeigniter,Jquery,朋友我创建了一个下拉列表,使用下面的代码使用js <script> $('.menu').dropit(); </script> <ul class="menu"> <li> <a href="#">Product_name</a> <ul> <? foreach($customer_details
<script>
$('.menu').dropit();
</script>
<ul class="menu">
<li>
<a href="#">Product_name</a>
<ul>
<? foreach($customer_details as $details){?>
<li><a href="#"><?echo $details->name;?></a></li>
<?}?>
</ul>
</li>
</ul>
$('.menu').dropit();
-
问题是,当用户点击下拉列表的链接时,我需要发送的结果就是ie
$details->name
通过对控制器中函数的ajax请求(使用codeignitor框架)。这是怎么做到的
JS来源:试试这个$('.menu ul li a').on('click', function(e) {
e.preventDefault(); // prevent the link from triggering a pageload
var productName = $(this).html();
$.ajax({
type: "POST",
url: url, // the url you want to send it to
data: {name: productName },
success: function() {
// do whatever you need to do on success
}
});
});
在服务器端,您可以使用
$\u POST['name']
访问产品名称 你可以试试这样的
// In your HTML replace the line with this
<li><a onclick="sendInfo(this);" href="#"><?echo $details->name;?></a></li>
// JS
function sendInfo(aEl){
var val = $(aEl).text();
$.ajax({
url : "your url",
data : {"name" : val}
}).done(function(){
// Success. Do something
});
}
//在HTML中,将行替换为
//JS
函数sendInfo(aEl){
var val=$(aEl).text();
$.ajax({
url:“您的url”,
数据:{“名称”:val}
}).done(函数(){
//成功,做点什么
});
}
这是一个关于更改下拉列表的ajax请求,对我来说很好
我希望这也能解决你的问题
<select name="all_users" id="all_users" onchange="Mehdi_ajax(this.value);">
<option value=""><?=$this->lang->line('global_all')?></option>
<?php if($all_users)
{
foreach($all_users->result() AS $item=>$val)
{
?>
<option value="<?=$val->uid?>"><?=$val->username?></option>
<?php
}
}
?>
</select>
为什么要将javscript函数调用直接添加到html代码中?应该理解这一点。你应该对JS/HTML的工作原理有基本的了解。我确实理解它应该做什么,但这并不是真正的最佳实践。如果您决定更改代码的函数名或命名空间,该怎么办?永远不要教糟糕的编码实践不,我的意思是,我刚刚提供了解决方案。您可以将其放在单独的文件中,也可以放在HTML的头/体部分。您可以随意更改函数名或名称空间,但逻辑应该保持不变,这就是我提供的。
<script type="text/javascript">
var surl = '<?=secure_xss()?>';
function Mehdi_ajax(id)
{
$.ajax({
type:"POST",
url: surl+"movable/jewelry/get_all",
data: "userid=" + id,
success: function(result){
$("#Mehdi_ajax").html(result);
}
});
}