意外的令牌},但仅适用于旧版的Webview,不适用于较新的版本 [英] Unexpected token } but only in older versions of webview, not newer ones

查看:97
本文介绍了意外的令牌},但仅适用于旧版的Webview,不适用于较新的版本的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在Android 4.4的网络视图上的这段代码中得到了 Uncaught SyntaxError:Unexpected token} ,但是相同的代码在Android 5.0或更高版本上也可以运行.

I'm getting Uncaught SyntaxError: Unexpected token } in this code on Android 4.4's webview, but same code is working on Android 5.0 or higher.

是什么使它在较旧的webview版本上失败?

What makes this fail on older webview versions?

function isyeriekle(satkir) {
    var ilanbasligi = $("input[name='ilanbasligi']").val();
    var ilanfiyati = $("input[name='ilanfiyati']").val();
    var mkare = $("input[name='mkare']").val();
    var binayasi = $("input[name='binayasi']").val();
    var klnmdrm = $("input[name='durumu']").val();
    var ilannotlari = $("#ilannotlari").val();
    var ilanfotolari = $('#list').html();


    if ($.trim(ilanbasligi) == '' || $.trim(ilanfiyati) == '' || $.trim(mkare) == '' || $.trim(klnmdrm) == '' || $.trim(ilannotlari) == '' || $.trim(binayasi) == '') {
        myApp.alert('Bir veya daha fazla kutucuk boş görünüyor...');
    }
    else {
        myApp.showPreloader('İlan kaydediliyor...');
        $.post(sunucuurl + "/iilankayit.php", {
            ilanbas: ilanbasligi,
            ilanfiyat: ilanfiyati,
            mkare: mkare,
            kullanimdurumu: klnmdrm,
            ilannotlari: ilannotlari,
            satkira: satkir,
            gilanfotolar: ilanfotolari,
            binayasi
        }, function(data, status) {
            if (data == 'verilereklendi') {
                myApp.hidePreloader();
                myApp.alert('İlan kaydedildi!');
                setTimeout(function() {
                    window.location.href = 'anasayfa.html';
                }, 2000);
            }
            else {
                myApp.hidePreloader();
                myApp.alert('İlan kaydedilemedi... ' + data);
            }
        });
    }
}

推荐答案

问题出在对象初始化程序的最后一行:

The problem is on the last line of the object initializer:

    satkira: satkir,
    gilanfotolar: ilanfotolari,
    binayasi                        // <=====
}, function(data, status) {
    if(data == 'verilereklendi') {

这使用的是ES2015 +(又名"ES6 +")语法功能,该功能在无法正常工作的环境中可能不可用.与ES5等效的是添加:value 部分:

That's using an ES2015+ (aka "ES6+") syntax feature which presumably isn't available in the environment where it isn't working. The ES5 equivalent is to add the : value part:

    satkira: satkir,
    gilanfotolar: ilanfotolari,
    binayasi: binayasi                        // <=====
}, function(data, status) {
    if(data == 'verilereklendi') {

这篇关于意外的令牌},但仅适用于旧版的Webview,不适用于较新的版本的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆