如何评估json响应数据 - ajax形式?

时间:2017-09-08 13:04:11

标签: javascript php jquery json ajax

我不知道如何写出正确的问题。但请让我解释一下。我用ajax发送并与json一起返回。每个json值包含其状态。所以我需要测试/评估状态并用它做点什么。

JSON

{url:"error",email:"ok",name:"ok"}

JS

//new port
$('#pflBtn').on('click',function(e){
    e.preventDefault();
    $.ajax({
        type: 'POST',
        url: 'inc/wcont8_port_db.php',
        data :$(this).closest('form').serialize(),
        dataType: 'json',
        success: function(data){
            if(data.url=="err"){//if url=error
                $('#plf_url').addClass('error');//will add .error into #plf_url class
            }else{
                $('#plf_url').addClass('success');
            }
        }
    })//ajax
})

HTML

<form class="pflForm">
    <div class="form-group form-float">         
        <div class="form-line" id="pfl_url">
            <input type="text" class="form-control" name="pfl_url" value="URL" required />
            <label class="form-label">URL (www.domain.com)</label>
        </div>
    </div><!-- form-group form-float -->
<button type="submit" id="pflBtn">Save</button>
</form>

1 个答案:

答案 0 :(得分:0)

您犯了两个错误,请使用代码检查我的评论,然后通过更改它们再试一次:

$('#pflBtn').on('click',function(e){
    e.preventDefault();
    $.ajax({
        type: 'POST',
        url: 'inc/wcont8_port_db.php',
        data :$(this).closest('form').serialize(),
        dataType: 'json',
        success: function(data){
            if(data.url=="error"){// url has value 'error', but this was checking 'err'
                $('#plf_url').addClass('error');//will add .error into #plf_url class but the class is not available in your html,
            }else{
                $('#plf_url').addClass('success');
            }
        }
    })//ajax
})