【问题标题】:Ajax not working in Chrome extension?Ajax 在 Chrome 扩展程序中不起作用?
【发布时间】:2012-07-09 10:22:41
【问题描述】:

我正在尝试编写一个示例扩展,它应该是这样工作的。我的扩展有一个选项页面,当人们点击登录按钮时,它会向 test.php 发送一个 ajax 请求并获取信息以提醒用户。但它不起作用,我不知道为什么。 这是我的文件夹结构

chrome 

  \ manifest.json
  \ options.html
  \ options.js
  \ test.php

在 options.html 中

<div class="login-button" id="login-button">Sign in</div>

在 options.js 中

 $(document).ready(function(){  
    alert('hello');
    $('#login-button').click(function() {
        loginAjax();
    });
 })
 function loginAjax() {
    $.ajax({
       url: 'test.php',
       data: "",
       dataType: 'json',
       success: function(data) {
          alert(data);
       }
    });
 }

在 Ajax URL 中我尝试放置绝对路径,但它不起作用。

提前致谢。

编辑:它已经工作了,我不知道:-D

【问题讨论】:

  • 我知道但我不知道如何显示我的代码:((
  • 你有几个选择......直接,jsbinjsfiddle 可能还有其他......简单地说......“它不起作用”对任何人都没有帮助 - 也许包括错误您在调试器中收到的消息...
  • test.php 它在哪里?我的意思是你能给出完整的路径
  • @MQuy :请“接受”您之前的 3 个问题。
  • Chrome 无法执行 PHP 脚本。如果要从某个服务器请求 PHP 文件,则必须使用绝对 URL。此外,必须通过将 URL 添加到清单文件中的权限字段来启用对此文件的访问。

标签: jquery xml ajax google-chrome google-chrome-extension


【解决方案1】:

你必须使用 Cross-Origin XMLHttpRequest 而不是 jquery 查看更多http://code.google.com/chrome/extensions/xhr.html

【讨论】:

    猜你喜欢
    • 2012-06-03
    • 2015-01-16
    • 1970-01-01
    • 1970-01-01
    • 2014-06-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多