Php 无法通过ajax将参数发送到页面本身
我在keyup事件中将参数发送到页面本身 我通过ajax发送一个参数,比如Php 无法通过ajax将参数发送到页面本身,php,javascript,jquery,ajax,codeigniter,Php,Javascript,Jquery,Ajax,Codeigniter,我在keyup事件中将参数发送到页面本身 我通过ajax发送一个参数,比如url:http://localhost/application/views/pages/users/tags.php?tagfilter=lif“, 并在javascript函数('/instruction/showtags/',{ 我检查了我的控制台,它没有显示错误和警告。 但我确信它要么没有发送参数,要么可能没有获取参数 请让我知道,为什么我的参数没有发送?编写ajax代码的方法正确吗 如果你不能理解我的问题,那么请
url:http://localhost/application/views/pages/users/tags.php?tagfilter=lif“,
并在javascript函数('/instruction/showtags/',{
我检查了我的控制台,它没有显示错误和警告。
但我确信它要么没有发送参数,要么可能没有获取参数
请让我知道,为什么我的参数没有发送?编写ajax代码的方法正确吗
如果你不能理解我的问题,那么请让我知道,我将尝试用其他方式解释它
完整源代码:
tags.php
<input placeholder="Search" id="tagfilter" name="tagfilter" type="text"/>
Jquery/ajax函数
<script type="text/javascript">
$(document).ready(function() {
$('#tagfilter').keyup(function(e){
// alert("called");
$.ajax({
url:"http://localhost/application/views/pages/users/tags.php?
tagfilter=lif",
type:"get",
success: function(){
}
});
});
});
</script>
$(文档).ready(函数(){
$('#tagfilter').keyup(函数(e){
//警报(“被呼叫”);
$.ajax({
url:“http://localhost/application/views/pages/users/tags.php?
tagfilter=lif“,
键入:“获取”,
成功:函数(){
}
});
});
});
我的无限滚动js文件,包括在同一页面中
<script>
(function($) {
$.fn.scrollPagination = function(options) {
var settings = {
nop : 10, // The number of posts per scroll to be loaded
offset : 0, // Initial offset, begins at 0 in this case
error : 'No More Data To Display!', // When the user reaches the end this is the message that is
// displayed. You can change this if you want.
delay : 500, // When you scroll down the posts will load after a delayed amount of time.
// This is mainly for usability concerns. You can alter this as you see fit
scroll : true // The main bit, if set to false posts will not load as the user scrolls.
// but will still load if the user clicks.
}
.............................
.............................
.............................
(函数($){
$.fn.scrollPagination=函数(选项){
变量设置={
nop:10,//要加载的每个卷轴的帖子数
偏移量:0,//在本例中,初始偏移量从0开始
错误:“没有更多数据要显示!”,//当用户到达末尾时,这是显示的消息
//已显示。如果需要,您可以对此进行更改。
延迟:500,//当您向下滚动时,延迟一段时间后将加载帖子。
//这主要是出于可用性方面的考虑。您可以根据自己的需要进行修改
scroll:true//如果设置为false,则在用户滚动时不会加载主位。
//但如果用户单击,仍将加载。
}
.............................
.............................
.............................
更新:
我到底想做什么
我用jquery实现了一个无限滚动。当我的页面加载时,它调用我的控制器,从控制器获取数据并在我的视图页面中显示 现在,我计划在这个页面上放置无限滚动搜索。 我有一个文本框,从这个文本框中,我试图搜索keyup事件 我正在尝试这个逻辑。如果你有更好的逻辑,请与我分享,因为我很长时间以来都在努力实现这个逻辑
检查
$\u GET['tagfilter']==”
,并且仅当字符串为空时才打印它。
因此,它应该是:
<?php if( isset($_GET['tagfilter']) && $_GET['tagfilter'] != "") { echo $_GET['tagfilter'];} ?>
好的。我不知道你的结构,所以我有一些建议 首先:您需要知道,当PHP是服务器端语言时,只要JS是客户端语言,javascript的处理速度就比PHP快得多。因此,请尝试将PHP数据保存在javascript变量中,如下所示:
var seg3 = "<?php echo $this->uri->segment(3) ?>";
$.post("/instruction/showtags/" + seg3, {...etc
var seg3=“”;
$.post(“/instruction/showtags/”+seg3,{…等
然后,为了您的安全,只需检查您是否需要所有url,而不仅仅是其中的一部分(取决于CI配置),这样您的代码就可以像这样出现
var seg3 = "<?php echo $this->uri->segment(3) ?>";
var myurl = "<?php echo site_url('casting/send_email'); ?>" + seg3;
$.post(myurl, {...etc
var seg3=“”;
var myurl=”“+seg3;
$.post(myurl,{…等)
并且确保不要使用$\u GET
第二,确保你发送的是段并且它在那里。你可以随时使用
javascript中的console.log()
,以跟踪数据并查看数据是否为空
无论你想在keyup或keydown上使用它,还是其他任何方式,它都是一样的
如果您使用的是json请确保将其作为最后一个参数添加到
$.post()
方法中,您可以看到它的。在代码顶部,它是否应该是$\u GET['tagfilter'!=”
?(注意!=
)@JerrySeeger我听不懂你说的话。请用其他方式告诉我。谢谢你只是好奇:你是否用?if(isset($\u GET['tagfilter')和&$\u GET['tagfilter']==“”)来更新你自己的问题。
应该是if(isset($\u GET['tagfilter'))&$\u GET['tagfilter']!“”)
当您可以使用段时,为什么要在Ci中发送$\u GET
。我认为您在实现想法的方式上存在问题。请详细描述您的想法,以便我们可以提供更多帮助。我不确定您是否知道PHP是服务器端的,并且只有在加载javascript后才会执行,这可能是问题所在。是的,这就是问题所在m、 你知道如何使用其他一些技术来完成这项工作吗?你应该看看jQuery ajax函数,将数据传输到服务器并得到一个答案:但是你已经在使用$.post了,这也应该可以。因此$get['tag..]是pageload上查询字符串中的标记,例如index.php?tag=test