2017-09-22 1 views
4

Ich versuche Google Transliteration in meiner Website zu implementieren. Es arbeitet an allen unterstützten indischen Sprachen. Aber wenn ich Englisch wähle, zeigt es einen Fehler wie 'Nicht unterstützte Sprache en in targetLangCode Array'. Bitte helfen Sie mir, dieses Problem zu lösen. Dies ist mein Code:Google Translator Standardsprache

<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> 
<script type="text/javascript" src="https://www.google.com/jsapi"></script> 
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.0.0-alpha1/jquery.js"></script> 
<script type="text/javascript" src="jquery-2.2.3.min.js"></script> 
<script> 
    google.load("elements", "1", { 
     packages: "transliteration" 
    }); 
</script> 
</head> 
<body> 
<select id="languageOptions"> 
<option value="English">English</option> 
<option value="Unicode">Unicode</option> 
</select> 

<select name="langpair" style="height:32px; padding:0; display:none" id="langpair" size="1"> 

    <option value="HINDI" selected>Hindi</option> 
    <option value="BENGALI">BENGALI</option> 
    <option value="TELUGU">Telugu</option> 
    <option value="MARATHI">Marathi</option> 
    <option value="TAMIL">Tamil</option> 
    <option value="URDU">Urdu</option> 
    <option value="KANNADA">Kannada</option> 
    <option value="GUJARATI">Gujarati</option> 
    <option value="MALAYALAM">Malayalam</option> 
    <option value="PUNJABI">PUNJABI</option> 
    <option value="SANSKRIT">SANSKRIT</option> 
    <option value="NEPALI">Nepali</option> 
    <option value="ARABIC">Arabic</option> 
    <option value="SINDHI">Sindhi</option> 
</select> 
<br/> 

<textarea class="form-control" maxlength="160" id="message" name="message" rows="3" placeholder="Message"></textarea> 
<hr> 

<br/> 
<script> 
$('#languageOptions).change(function() { 
if($(this).val() == 'Unicode') { 
$('#langpair').css('display', 'inline-block'); 
} 
else { 
$('#langpair').css('display', 'none'); 
} 
)}; 
    var options = { 
     shortcutKey: 'ctrl+g', 
     transliterationEnabled: true, 
     sourceLanguage: 'en', 
     destinationLanguage: ['hi'], 
     }; 
     var control = new google.elements.transliteration.TransliterationControl(options); 
     control.makeTransliteratable(['message']); 

     $("#langpair").change(function() { 

     var data = this.value; 

     var destinationLanguage = google.elements.transliteration.LanguageCode[data]; 
     control.setLanguagePair('en', destinationLanguage); 
     }); 

</script> 
</body> 
</html> 

Wie kann ich Standardsprache ‚Englisch‘. Ich habe versucht, sourceLanguage und destinationLanguage in andere Sprachen zu ändern, und es funktioniert. Wenn aber destinationLanguage auf 'en' gesetzt ist, wird ein Fehler angezeigt.

+0

Was Ergebnis der Einstellung 'destinationLanguage' Eigenschaft Wert erwartet wird '[ 'oder']' 'an options' Objekt' neue google.elements.transliteration.TransliterationControl() übergeben '? – guest271314

+0

Es ist nur ein Beispiel (konvertiert Englisch in Oriya) und muss geändert werden. Also habe ich es für Englisch in 'en' geändert. Aber es funktioniert nicht – geeth

+0

Versuchen Sie den Code lokal? Ist jQuery definiert? – guest271314

Antwort

1

Ihr Code schlägt fehl, da Ausgangssprache und Zielsprache nicht identisch sein können. Es macht keinen Sinn, von Englisch auf Englisch zu transkribieren. es ist kein gültiges Paar

Der genaue Fehler ist

Nicht unterstützt source & TARGET Paar: source: en TARGET: en

Die Standard-Ausgangssprache Englisch ist, Sie müssen nicht gesetzt es. Aus dem offiziellen Dokument

sourceLanguage ist eine obligatorische Zeichenfolge, die die Quellsprache mithilfe der LanguageCode enum (wie in google.elements.transliteration.ENGLISH) angibt. Derzeit ist Englisch die einzige unterstützte Ausgangssprache.

Und Sie setzen die Zielsprache Standard only.So Sie eine indische Sprache als Standard in HTML wählen haben Sie es durch Hinzufügen von ausgewählten Attribut Option Tag tun können.

<option selected >Tamil</option> 
+0

Danke Shyam. Es funktioniert jetzt. Um zwischen Englisch und anderen Sprachen zu wechseln, gibt es die Option shortKey. – geeth

+0

Aber ich brauche Englisch als Standardsprache. Ist es möglich – geeth

+0

Ich habe einige Änderungen in meinem Code vorgenommen. Standardsprache ist wie vorgeschlagen auf Hindi eingestellt. Aber jetzt habe ich ein Dropdown-Menü für die Auswahl von Englisch- oder Unicode-Optionen. Wenn ich Unicode wähle, erscheint das nächste Dropdown-Menü mit regionalen Sprachen. In diesem Fall muss ich Englisch als meine Standardoption einstellen. Ist es möglich ? – geeth

Verwandte Themen