0

我正在尝试制作一批将您带到链接的批次,但这不是问题,问题是我正在尝试从网站获取链接,但我不知道为什么我不好。我解释得更好,在网站上有一张图片,这张图片带你到我想要的地方。这是图像代码。忘了饼干,我只想要这张图片带你去的地方。

<div id="x" class="votes" style="height:30px;">
<img src="images/image.png" id="y"></div>

往下走,我们有这样的代码:

<script>
("#y").click(function () {
  $.post("z.php",{id:100},function(exit){
    $("#x").html(exit);
  }
);
</script>

好的,问题是当我在网站上时,例如 www.h.com/i.php?id=100 (其中有我向您展示的代码)并且我将 url 更改为 /i.php?id =100 for /z.php?id=100 (我认为网站会这样做)我收到此错误:

您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 1 行的 '' 附近使用正确的语法。

但是,如果您单击网络中的 image.png,网络会执行我正在尝试对 url 执行的操作...我不知道您是否理解我,对不起我的英语和我的解释。

4

2 回答 2

1

You can't interchange a GET and POST request. Something that looks like this is a GET request:

www.h.com/i.php?id=100

Also, you should take a look at your z.php. There is something wrong with how it handles your SQL query. It could be a typo causing a syntax error. Most probably, you missed escaping a quote, forgot a quote or your opening and closing quotes don't match.

于 2012-05-26T11:24:53.643 回答
0

是的,如果 z.php 实际上响应 GET,则不能使用 POST。假设 z.php 实际上响应 GET,jQuery 的加载函数更适合您,因为您想用 ajax 结果填充 div。

没试过,但试试下面的:

<script>
("#y").click(function () {
    $("#x").load("z.php", {id:100});
  });
</script>

回复您的评论:

有什么方法可以在不单击图像的情况下执行代码的操作吗?

是的。如果你想在没有用户点击的情况下执行操作,你可以试试这个:

<script>
$(function(){
    $("#x").load("z.php", {id:100});
});
</script>

我想现在我明白了你关于批处理的问题。在 javascript 中,您可以在任何您喜欢的地方运行批处理程序。只需将 javascript 行/批处理放在脚本标记中即可。

<script>
  //... Your program comes here (batch)
</script>

但是该批处理应该仅在加载资源/图像后运行。因此,您可以在文档加载完成后运行程序/批处理,如下所示。

<script>
  $(function() {
     //... Your program comes here (batch)
  });
</script>

要了解有关此的更多信息,请在 Google 上搜索“javascript 文档加载”或“javascript on load”。Jquery 提供了一个功能来检测文档负载$(function(){ /* ... */ });,如上所示。

于 2012-05-26T11:53:58.510 回答