从PHP生成的链接有什么问题?

从PHP生成的链接有什么问题?,php,jquery,ajax,Php,Jquery,Ajax,在我的代码中,我只是在单击时超链接到PHP函数的锚定标记 我的代码如下。jQuery中的,index.php调用文件other.php 另一个.php 单击超链接时,超链接不起作用 我的前导空格有问题吗?我需要更改代码吗?为什么您的第二个回显“$fname.”???第一个“”根本不必在那里 此外,它似乎不应该在前面的空间点- 如果“display”函数返回false,则onclick处理程序将短路默认的超链接功能。只需将onclick=“display($fid)”设置为onclick,而不

在我的代码中,我只是在单击时超链接到PHP函数的锚定标记

我的代码如下。jQuery中的,
index.php
调用文件
other.php

另一个.php

单击超链接时,超链接不起作用


我的前导空格有问题吗?我需要更改代码吗?

为什么您的第二个
回显“$fname.”???第一个“”根本不必在那里

此外,它似乎不应该在前面的空间点-

如果“display”函数返回false,则onclick处理程序将短路默认的超链接功能。只需将onclick=“display($fid)”设置为onclick,而不是将onclick设置为“return display($fid)”,超链接将始终工作

如果看不到代码的其余部分或更详细的描述,我真的无法说出还有什么问题。但这是第一件冲着我跳出来的事。如果元素的事件处理程序返回false,则常规功能永远不会出现。


<?php
   echo '<a href="my.php?action=show&id='.$fid.'"
     onclick="return  display(\''.$fid.'\');">'.$fname.'</a>';
 ?>
这应该是我经常使用的“用于php字符串”和“在HTML部分使它更容易阅读:)


还有一个更大的错误是,你的链接看起来是这样的:Bla因为你做了一个自动关闭,它可能显示了一个没有价值的链接,我不太明白你想用一个锚标记中的所有东西实现什么…对onclick事件作出反应,并将浏览器重定向到另一个位置?我知道调整
标签功能的简单方法是:

<a href="javascript:doStuffHere()" id="...">...</a>

就像其他人提到的,这可能是JavaScript返回的问题,因为我不能说PHP代码本身有什么问题会导致这个问题

不过,我有一些技巧可以让你的代码看起来更简单

我对处理字符串的第一个建议是永远不要强迫自己逃避“或”。通过切换报价样式,您可以更轻松地阅读代码并查找由报价引起的问题


回声”;

实际上,在键入此内容时,我注意到您没有获得超链接,因为您没有完成锚定标记。更具体地说,您正在使用/提前终止锚定标记。在上面的示例中,我添加了:


.$link_标题。”
这应该可以解决问题

第二项建议:


回显“$fname.”;
可以很容易地打印出来,如下所示:


echo$fname.”;

对于不需要服务器额外工作的字符串,建议使用“而不是”,并且不需要前导“”

编辑:

echo';

这行吗?它是否显示链接?

点前的空格实际上没有意义,这取决于您使用的编码标准,它可能被要求在那里,也可能被禁止。个人我删除了空格,但其他人出于可读性的考虑喜欢它。这两个点都是有效的,但都不会导致报告的问题。这种样式不允许用户在新选项卡中打开页面,如果链接只是更改了页面指向某篇文章的方式(例如,他这样做的方式),则用户可以留在页面上做一些事情,或者单击鼠标中键并在中打开页面一个新的窗口,我想“所有这些东西”很可能是这样的JS优雅地降级。在上面的示例中,当用户没有启用JS时会发生什么?他们不会去任何地方,他们会有一个坏的,不可用的链接。为启用JS的用户提供onlick更好,为未启用JS的用户提供a href更好。二战持续了6年,永远改变了世界。我们进入21世纪已经9年了,但有些人还没有退休?他想如何使用AJAX调用这个页面?关闭JS?没有JS的移动设备呢?基于文本的浏览器?搜索引擎试图索引链接?永远不要假设用户正在运行什么。很多人启用JS并不意味着每个人都启用。请参考问题:“我的代码:我已经通过ajax调用了另一个.php,从index.php使用JQuery”JQuery魔术和基于文本的浏览器?我试图回答这个问题,而不是争论在每个web应用程序中采用这种方法是否好hyperlink是针对fname的,我也包括了这一点,我的问题是,我无法在ajax中获得hyperlink。使用ajax时,您的逻辑是否相同?
<a href="javascript:doStuffHere()" id="...">...</a>
<?php

$fid = 'myId';
$fname = 'my link name';

echo "<a id=\"$fid\" href=\"javascript:doStuff()\">$fname</a>";

?>
echo ' <a href="my.php?action=show&amp;id='.$fid.'" onclick="return display("'.$fid.'");"> '.$fname.'</a>;