如何分隔包含STD_ERROR的Jquery响应

时间:2010-07-28 16:22:20

标签: jquery

$.get("/student/Studentnumber.php", $("myform").serialize(),
    function(data){
            alert(data);
            if(data.substring(0,7) == 'STDERR'){
                //$("#MYSPAN").text(data.substring(8));
        } else {
                //$("#MYSPAN").text(data);
        }
    }
);

在上面的脚本中我有来自“Studentnumber.php”的PHP响应。如果输入了正确的数字,“数据”字段包含包含“学生名称”。如果输入了错误的数字,它将显示“STDERR:SNO无效”。现在,当输入错误的数字时,我希望仅响应“SNO not VALID”。我想过来“STDERR:”

2 个答案:

答案 0 :(得分:0)

你很亲密。

.substring()来电的索引是1。

试一试: http://jsfiddle.net/2GcS3/

if(data.substring(0,6) == 'STDERR'){
    $("#MYSPAN").text(data.substring(7));
} else {
    $("#MYSPAN").text(data);
}​

更新:如果您使用$.trim()来消除额外的空白区域,此答案仍然有效。

data = $.trim(data);

否则,请使用以下答案。


编辑:根据您的评论,STDERR的开头有一个空格。在这种情况下,您需要返回到您拥有的数字,并将该空格添加到STDERR字符串以进行比较。

试一试: http://jsfiddle.net/2GcS3/1

if(data.substring(0,7) == ' STDERR'){
    $("#MYSPAN").text(data.substring(8));
} else {
    $("#MYSPAN").text(data);
}​

答案 1 :(得分:0)

您可以使用字符串函数以多种方式处理响应文本。

例如:

  1. 使用data.substring(7):这将返回所需的文本。

  2. 使用'split'功能也基于你的分隔符':'。

  3. 我认为这可以帮助您解决问题。