我想将POST中Bootstrap下拉列表中的选定项目发送到我的控制器,但不知何故它没有被发送。
在我的下拉列表中,我从<li></li> tag
中的数据库中获取记录,如下所示:
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Your Sites <span class="caret"></span></a>
<ul class="dropdown-menu">
<li ><a href="#"><?php
foreach($sites as $site)
{
echo "<li class='specialLink' id='$site->site_key'>".$site->site_key."</li>";
}?></a></li>
</ul>
</li>
这是我发送POST数据的脚本:
<script type="text/javascript">
$( ".specialLink" ).click(function() {
var value = this.id; //get value for throw to controller
alert(value);
$("#specialLink").submit(function(){
$.ajax({
type: "POST", //send with post
url: "<?php echo site_url('customer/dashboard') ?>",
data: "value=" + value,
});
});
});
</script>
但我不会在我的控制器上发送POST数据中的任何内容,也不会在控制台中收到任何错误消息。
答案 0 :(得分:1)
我认为你没有正确使用submit
。 submit
函数将事件处理程序绑定到submit
javascript事件。阅读更多https://api.jquery.com/submit/。
您只想在点击$(.specialLink)
时执行ajax请求,请尝试:
$( ".specialLink" ).click(function() {
var value = this.id; //get value for throw to controller
$.ajax({
type: "POST", //send with post
url: "<?php echo site_url('customer/dashboard') ?>",
data: "value=" + value,
});
});
答案 1 :(得分:0)
您可以使用此代码将数据发送到php文件:
<a href="#" onclick="postExample(); return false;">Your Link here</a>
function postExample() {
$.post('url', {"postfield1":"val1"}, function(resp) {
//Do something with the AJAX response
});
}
或
<a href="#" onclick="$.post('url', {"postfield1":"val1"},; return false;">Your Link here</a>