2017-11-27 5 views
-1

ここではラインで3jQueryのAjaxのVARライン - キャッチされないでSyntaxError:私はアヤックス「キャッチされないでSyntaxError:予期しない識別子」を取得呼び出すためのjQueryを使用しています予期しない識別子

を、私は原因機密目的に、元のURLを削除しました。しかし、私はcsrHost行を削除しても、次の行も同じエラーを発生します。

助けてください。前もって感謝します。

function getCSR(){ 
    $.ajax ({ 
     var csrHost = "https://example.com/jsp/csr.jsp?"; 
     var commonname = '&'+'commonname'+'='+$('#csrName').val().toUpperCase(); 
     var company = '&'+'org'+'='+$('#csrCom').val().toUpperCase(); 
     var city = '&'+'locality'+'='+$('#csrCity').val().toUpperCase(); 
     var state = '&'+'state'+'='+$('#csrState').val().toUpperCase(); 
     var country = '&'+'country'+'='+$('#csrCountry').val().toUpperCase(); 
     var OrgUnit = '&'+'commonname'+'='+$('#csrOU').val().toUpperCase(); 
     var keysize = '&'+'keysize'+'='+2048; 
     url: csrHost+commonname+company+city+state+country+OrgUnit+keysize, 
     type: "GET", 
     //data: {latlng:40.714224,-73.961452} 
     //contentType: "application/json; charset=utf-8", 
     success: function(csr){ 
      var textareaResult = $('#textarea1') 

      textareaResult.html(csr) 

     } 
    }) 
} 

答えて

4

jQuery-slimの代わりに、標準jQueryを使用する必要があります。 ajaxjQuery-slimバージョンから削除されています。

機能の外にurlを作成する必要があります。パラメータとしてobjectが使用されますが、内部にはvarが使用されています。

function getCSR() { 

    var csrHost = "https://example.com/jsp/csr.jsp?"; 
    var commonname = '&' + 'commonname' + '=' + $('#csrName').val().toUpperCase(); 
    var company = '&' + 'org' + '=' + $('#csrCom').val().toUpperCase(); 
    var city = '&' + 'locality' + '=' + $('#csrCity').val().toUpperCase(); 
    var state = '&' + 'state' + '=' + $('#csrState').val().toUpperCase(); 
    var country = '&' + 'country' + '=' + $('#csrCountry').val().toUpperCase(); 
    var OrgUnit = '&' + 'commonname' + '=' + $('#csrOU').val().toUpperCase(); 
    var keysize = '&' + 'keysize' + '=' + 2048; 

    $.ajax ({ 
     url: csrHost + commonname + company + city + state + country + OrgUnit + keysize, 
     type: "GET", 
     //data: { latlng: 40.714224, -73.961452 }, 
     //contentType: "application/json; charset=utf-8", 
     success: function(csr) { 
      var textareaResult = $('#textarea1'); 
      textareaResult.html(csr) 
     } 
    }) 
} 

私はもっと美しいと思うこのアプローチを試すこともできます。

function getCSR() { 

    var csrHost = "https://example.com/jsp/csr.jsp?"; 

    var keyValues = [ 
     { name: 'commonname', value: $('#csrName').val() }, 
     { name: 'org', value: $('#csrCom').val() }, 
     { name: 'locality', value: $('#csrCity').val() }, 
     { name: 'state', value: $('#csrState').val() }, 
     { name: 'country', value: $('#csrCountry').val() }, 
     { name: 'commonname', value: $('#csrOU').val() }, 
     { name: 'keysize', value: '2048' }, 
    ]; 

    var queryString = keyValues.map(item => `${item.name}=${item.value.toUpperCase()}`) 
           .join('&');  

     $.ajax ({ 
      url: csrHost + queryString, 
      type: "GET", 
      //data: { latlng: 40.714224, -73.961452 }, 
      //contentType: "application/json; charset=utf-8", 
      success: function(csr) { 
       var textareaResult = $('#textarea1'); 
       textareaResult.html(csr) 
      } 
     }) 
    } 
+0

感謝を。しかし、今私は別のエラーが発生しました "Uncaught TypeError:$ .ajaxは関数ではありません" $ .ajax({行。 – Jerry

+1

'' $ 'を参照するものに' jQuery'を追加しましたか? –

+0

ます。 、それだけで上記のjqueryのコード。 – Jerry

0

のjQueryのAjax関数の定義は、あなたがURLと設定(オプション)を供給することができることを意味

jQuery.ajax(url [, settings ]) 

として定義されています。 この文脈では無効な一連の文を定義しようとしているため、エラーが発生します。 Specで指定されているURLまたは設定オブジェクトを渡す必要があります。あなたは、Ajaxの機能の中から変数の作成を抽出する必要が

function getCSR() { 

    var csrHost = "https://example.com/jsp/csr.jsp?"; 
    var commonname = '&' + 'commonname' + '=' + $('#csrName').val().toUpperCase(); 
    var company = '&' + 'org' + '=' + $('#csrCom').val().toUpperCase(); 
    var city = '&' + 'locality' + '=' + $('#csrCity').val().toUpperCase(); 
    var state = '&' + 'state' + '=' + $('#csrState').val().toUpperCase(); 
    var country = '&' + 'country' + '=' + $('#csrCountry').val().toUpperCase(); 
    var OrgUnit = '&' + 'commonname' + '=' + $('#csrOU').val().toUpperCase(); 
    var keysize = '&' + 'keysize' + '=' + 2048; 

    $.ajax ({ 
     url: csrHost + commonname + company + city + state + country + OrgUnit + keysize, 
     type: "GET", 
     //data: { latlng: 40.714224, -73.961452 }, 
     //contentType: "application/json; charset=utf-8", 
     success: function(csr) { 
      var textareaResult = $('#textarea1'); 
      textareaResult.html(csr) 
     } 
    }) 
} 
0

:以下、あなたの場合、例えば Jquery Ajax Specification

は正しい方法でしょう。 jQueryのAjaxの機能のhereについて

function getCSR(){ 
    var csrHost = "https://example.com/jsp/csr.jsp?", 
     commonname = '&'+'commonname'+'='+$('#csrName').val().toUpperCase(), 
     company = '&'+'org'+'='+$('#csrCom').val().toUpperCase(), 
     city = '&'+'locality'+'='+$('#csrCity').val().toUpperCase(), 
     state = '&'+'state'+'='+$('#csrState').val().toUpperCase(), 
     country = '&'+'country'+'='+$('#csrCountry').val().toUpperCase(), 
     OrgUnit = '&'+'commonname'+'='+$('#csrOU').val().toUpperCase(), 
     keysize = '&'+'keysize'+'='+2048, 
     url = csrHost+commonname+company+city+state+country+OrgUnit+keysize 
    $.ajax ({ 
     url: url, 
     type: "GET", 
     success: function(csr){ 
      var textareaResult = $('#textarea1') 
      textareaResult.html(csr) 
     } 
    }) 
} 

詳細情報:このように。

0

Hiii実際に問題は、あなたはajaxリクエスト内でvarを使うことができないということです。これらの変数を$ .ajaxの外に定義して、それらの変数を内部で使用すると動作します。

、ちょうどあなたが知っているように、あなたはJSONオブジェクト内のVARを使用することはできません:)

{ 
"key":"value" 
} 

これは、これがそう、これができJSONオブジェクトを保持しているJSON

$.ajax({ } ) 

の正しい方法でありますvarを含んでいない

は、それがあなたの疑問をクリアすることを願っています:) :)

0
function getCSR(){ 
    var csrHost = "https://example.com/jsp/csr.jsp"; 
    var param = { 
      commonname: $('#csrName').val().toUpperCase(), 
      org: $('#csrCom').val().toUpperCase(), 
      locality: $('#csrCity').val().toUpperCase(), 
      state: $('#csrState').val().toUpperCase(), 
      country: $('#csrCountry').val().toUpperCase(), 
      commonname: $('#csrOU').val().toUpperCase(), 
      keysize:2048 
      }; 

    $.ajax ({ 
     url: csrHost, 
     type: "GET", 
     data: param, 
     //contentType: "application/json; charset=utf-8", 
     success: function(csr){ 
      var textareaResult = $('#textarea1') 
      textareaResult.html(csr) 
     } 
    }) 
} 
関連する問題