繁体   English   中英

JavaScript在Firefox以外的任何浏览器中都能正常工作吗?

[英]JavaScript works fine in any browser but Firefox?

好的,这是我的JavaScript

<script type="text/javascript" language="JavaScript">
function manageCart(task,item) {
var url = 'managecart.php';
var params = 'task=' + task + '&item=' + item;
var ajax = new Ajax.Updater(
          {success: ''},
          url,
          {method: 'get', parameters: params, onFailure: reportError});
}

function reportError(request) {
$F('cartResult') = "An error occurred";
}

这是HTML

<p>
<a href="javascript:void(0)" onclick="manageCart('add',83)">Add to cart</a>
</p>

该脚本在Firefox中不起作用,我已经运行了一些Firefox JS调试器,但它们未显示任何错误。 我的JavaScript语言不太好,如果可以的话,请帮助我:)如果此脚本可以使事情更清楚,则实际上使用了Prototype库。

对于这种类型的Ajax调用,请不要使用Ajax.Updater因为它被设计为使用ajax响应的内容更新特定的元素。 我相信您只是想进行一个简单的单个ajax调用,因此使用Ajax.Request将是您想要使用的。

使用Ajax.Updater的原始代码

var url = 'managecart.php';
var params = 'task=' + task + '&item=' + item;
var ajax = new Ajax.Updater(
      {success: ''},
      url,
      {method: 'get', parameters: params, onFailure: reportError});

使用Ajax.Request的代码

var url = 'managecart.php';
var params = 'task=' + task + '&item=' + item;
var ajax = new Ajax.Request(url,
     {
          method: 'get',
          parameters: params,
          onFailure: reportError,
          onSuccess: function(){
              console.log('It Worked');
          }
     });

我在此调用中放置了一个成功处理程序,只是为了确认它是否对您有用-并应将其输出到您的控制台。 您可以删除它或在满意的情况下注释console.log()

我在FireBug中花了更多时间,发现了错误。

时间戳:03.04.2013 10:36:38错误:ReferenceError:左侧无效赋值源文件: http : //www.example.com/index.php行:413,列:18源代码:

('cartResult') = "An error occurred";

Firefox迫切希望该语句如下所示:

('cartResult') == "An error occurred"; 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM