[英]Script works fine in any WebKit based browser but doesn't in 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.