我是新手,所以如果这只是愚蠢的问题,我深表歉意。
我已经在 ajax 调用上使用选项标签作为链接挣扎了 2 天。我已经浏览了许多教程,但找不到与我的工作相关的任何解决方案。我在 SELECT 标签内有用于分页的选项列表......
SELECT 标记的代码如下所示:
<select onchange="_change(this);">
<?php
$i = 1;
while ($lastpage >= $i):
?>
<option value="<?php echo $i?>"><?php echo $i; ?></option>
<?php
$i++;
endwhile;
?>
</select>
上面的 Html 代码工作正常,并根据每页记录显示页码。
SELECT 标签函数的可能 jQuery 代码是...
function _change(id)
{
alert(id);
$.ajax({
Type: "GET",
url: "index.php?pn="+id.value,
data: id.value,
success: function (result) {
$("pre").html(result);
}
});
};
我已经提示 id 了解它实际收到的内容......我能够在ajax调用上获取id,但无法加载数据,并且地址栏中的路径保持不变。
ajax 调用上的 php 代码是这样的。
if(isset($_GET['pn'])){
$id=$_GET['pn'];
echo $id." is id";
my_func();//Calling Php function
}
我正在调用从数据库加载数据的 php 函数,但这不起作用并给出一个致命错误,说调用未定义的函数 my_func();
提前致谢
到目前为止我搜索过的相关链接...
在<选项>标签中使用 HRF 链接选项>
function _change(id)
{
alert(id);
$.ajax({
Type: "GET",
url: "index.php?pn="+$(id).val(),
data: $(id).val(),
success: function (result) {
$("pre").html(result);
}
});
};
使用此修改后的代码。您必须使用 .val() 函数传递所选值。
更改
url: "index.php?pn="+id.value,
data: id.value,
自
url: "index.php?pn=" + $(id).val(),
data: $(id).val(),
更新:
顺便说一下,进行 ajax 调用不会更改 url,而不是您需要的 ajax 调用document.location.href = 'http://' + window.location.hostname + window.location.pathname + "?pn=" + $(id).val()
如果你能在开发工具中看到ajax调用,你的ajax调用没有错误(chrome/网络选项卡上的f12)
你说:
并给出一个致命错误,说调用未定义的函数 my_func();
那么你有一个名为 my_func 的函数吗?