1

我有一个特殊的问题。我正在尝试使用 AJAX 验证一些卡号。整个过程都很好,我得到了预期的脚本响应。但我不确定为什么当我在我的 javascript 上提醒它时,所有响应文本(即使它是一个空字符串)都会显示一个 [] 后缀。如果我直接从 javascript 发出警报,它显示正常。但是来自 AJAX 的所有响应都给出了上述输出。

谁能给我一个线索,为什么会这样?我可能在我的代码中做了一些愚蠢的事情......但无法弄清楚是什么......任何输入都将受到高度赞赏。

提前致谢

编辑:

Javascript代码:

var url = '" . JURI::base() . "index.php?option=<component>&view=<view>&format=raw&task=<task>';
var a = new Request({
    url: url,
    data: {
        '".JUtility::getToken()."': 1
    },
    method: 'post',
    onSuccess: function(responseText) {
        alert(responseText);
    },
    onFailure: function(xhr) {
        alert('Failed');
    }
}).send(); 

view.raw.php 上的 PHP 脚本

<?php echo "Here"; ?>

运行此脚本时,将抛出警报消息"Here[]"

---- 渲染的 JAVASCRIPT 代码 ---

window.addEvent('domready',function() {
    if($('addpluspayment')) {
        $('addpluspayment').addEvent('click', function(event) {
            bbCardNum = $('bbpluscardpayment').value;
            if(bbCardNum.length <= 0) {
                alert('Número de tarjeta no válida');
                return;
            }
            totalAmountToCheck = parseFloat($('taqPaymentAmount').value);
            var url = 'http://mydomain.com/index.php?option=com_bbpayment&view=taqcart&format=raw&task=bbcheckpoints';
            var a = new Request({
                url: url,
                data: {'5df1de004436f241ef112345035bab51':1,'totalAmountToCheck':totalAmountToCheck,'bbCardNum':bbCardNum}, 
                method: 'post',
                onSuccess: function(responseText) {
                    if(responseText == 'othercategories[]') {
                        alert('Entradas encontradas en otras categorías');
                    }
                    else {
                        alert(responseText);
                    }
                },
                onFailure: function(xhr) {
                    alert('Failed');
                }
            }).send();
        });
    }
});

在这里,警报 - 'Número de tarjeta no válida'、'Entradas encontradas en otras categorías' 和 'Failed'(直接从 javascript 抛出)出现没有任何问题。但所有 responseText 警报后缀为 [],甚至如果 PHP 脚本只回显“Hello”(这会将警报作为“Hello []”抛出)

4

0 回答 0