我有一个需要返回承诺的ajax调用.功能如下
client.tickets.create(ticket, function(err, req, result) {
if (err) {
logger.error(err);
return false;
}
return JSON.stringify(result);
});
Run Code Online (Sandbox Code Playgroud)
在执行下一个操作之前,我必须等待此函数执行.我怎样才能宣传这个功能?
我尝试了以下内容,它给了我一个错误说Cannot call method then of undefined:
return client.tickets.create(ticket).then(function(result){
return JSON.stringify(result);
},function(err){
logger.error(err);
return false;
});
Run Code Online (Sandbox Code Playgroud) 我正在使用TextInputLayout和浮动标签提示.但在正常状态下,我无法将提示颜色从白色更改为其他颜色.有没有办法做到这一点 ?
<android.support.design.widget.TextInputLayout
android:id="@+id/fullNameTextLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:layout_weight="0.75">
<EditText
android:id="@+id/etFullName"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="15dp"
android:layout_marginLeft="15dp"
android:layout_marginEnd="15dp"
android:layout_marginRight="15dp"
android:singleLine="true"
android:hint="Full Name"
android:textColor="@color/gray_dark"
android:textColorHint="@color/green"
android:textColorHighlight="@color/green" />
</android.support.design.widget.TextInputLayout>Run Code Online (Sandbox Code Playgroud)
在背景改变的情况下附加两个屏幕截图.
android android-layout android-edittext android-textinputlayout
我正在尝试解析JSON格式的字符串
var json_response = JSON.parse(response);
Run Code Online (Sandbox Code Playgroud)
回复如下.这是来自Google API的格式化JSON响应.
{
"location": {
"lat": 12.9621211,
"lng": 77.64804099999999
},
"accuracy": 740.0
}
Run Code Online (Sandbox Code Playgroud)
但是我得到一个错误说
Uncaught SyntaxError: Unexpected token {
Run Code Online (Sandbox Code Playgroud)
我在SO中检查了很多答案.很多人说上面的json响应已经是一个对象了.但是当我尝试的时候
console.log(response["location"]);
console.log(response.location);
Run Code Online (Sandbox Code Playgroud)
我得到以下输出
undefined
undefined
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么 ?
编辑:
console.log(response);
Run Code Online (Sandbox Code Playgroud)
给
{
"location": {
"lat": 12.9621211,
"lng": 77.64804099999999
},
"accuracy": 740.0
}
Run Code Online (Sandbox Code Playgroud)
更新:
当我尝试以下
console.log('"'+response+'"');
Run Code Online (Sandbox Code Playgroud)
我明白了
"{
"location": {
"lat": 12.962118199999999,
"lng": 77.6480399
},
"accuracy": 739.0
}
"
Run Code Online (Sandbox Code Playgroud)
好像在结束后还有一条额外的线}.这会有什么不同吗?
我在这里粘贴我的全部功能.对不起,如果我之前不清楚.
function get_distance_from_cellTower(json){
$.ajax({type: 'POST', url:"get_location.php",data:getformurlencoded(json),
success:function(response){
console.log('"'+response+'"');
var latitude;
var longitude;
var success;
var json_response;
try{ …Run Code Online (Sandbox Code Playgroud)