Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 当用于对webservice进行ajax调用的数据类型为“jsonp”时,如何将suces函数的结果与字符串进行比较_Javascript_Jquery_Ajax_Web Services_Jsonp - Fatal编程技术网

Javascript 当用于对webservice进行ajax调用的数据类型为“jsonp”时,如何将suces函数的结果与字符串进行比较

Javascript 当用于对webservice进行ajax调用的数据类型为“jsonp”时,如何将suces函数的结果与字符串进行比较,javascript,jquery,ajax,web-services,jsonp,Javascript,Jquery,Ajax,Web Services,Jsonp,我正在使用JQuery调用RESTful Web服务 我想使用if-else结构将success函数返回的响应与字符串进行比较 注意:RESTfulWebService的响应是JSONObject:-欢迎用户 这是我的密码: $("#loginform").submit(function(event){ event.preventDefault(); var user = document.getElementById(

我正在使用JQuery调用RESTful Web服务

我想使用if-else结构将success函数返回的响应与字符串进行比较

注意:RESTfulWebService的响应是JSONObject:-欢迎用户

这是我的密码:

            $("#loginform").submit(function(event){

            event.preventDefault();

            var user = document.getElementById("username").value;
            var pass = document.getElementById("password").value;

        $.ajax({
            url: "http://ec2-xx-xxx-xxx-xx.compute-1.amazonaws.com:8080/UserManagement/rest/user_details/sign_in",
            type: "POST",
            crossDomain: true,
            dataType: 'jsonp',
            data: { username: user, password: pass},
            success: function (result) {
            resultDiv.innerHTML=result;

            if (result.toString() == "Welcome User")
            {
                //link to direct to homepage
            }
                            else alert("Invalid details");

            },
            error: function (xhr, ajaxOptions, thrownError) {
            }
        });

请查看if-else部分,并建议我如何将响应与字符串进行比较?

如果ajax调用的结果是一个JSON对象,那么您将无法通过这种方式检查深度相等性。您需要找到字符串值Welcome User的键索引

如果您不确定输入的数据,您可以始终循环JSON对象,并在成功回调中检查欢迎用户:

var containedString = false;
for (var key in results) {
  if (results[key] === "Welcome User") {
    containedString = true;
  }
}

if (containedString = true) {
  // link to homepage
} else {
  alert("Invalid Details");
}

作为补充说明,在javascript中始终使用triple===更安全

我尝试添加这个,但是if-else块仍然没有在'if'块中执行代码:console.logHi User;