Extjs с Google Ajax Language Api - PullRequest
       11

Extjs с Google Ajax Language Api

0 голосов
/ 25 февраля 2010

Можем ли мы использовать Google AJAX Language API с EXTjs? Я пробовал пример для перевода, у меня есть один HTML-файл:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
 <HEAD>
  <TITLE> New Document </TITLE>
   <link rel="stylesheet" type="text/css" href="F:\vaishali.g\ext-3.1.0\resources\css\ext-all.css"/>
  <script type="text/javascript" src="F:\vaishali.g\ext-3.1.0\adapter\ext\ext-base.js"></script>
  <script type="text/javascript" src="F:\vaishali.g\ext-3.1.0\ext-all.js"></script>
  <script type="text/javascript" src="F:\vaishali.g\ext-3.1.0\ext-all-debug.js"></script>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
  <script type="text/javascript" src="http://www.google.com/jsapi"></script>
  <script type="text/javascript" src="F:\vaishali.g\Assignments\EXTJS\typemarathi.js"></script>

 </HEAD>

 <body>
    Type in Hindi (Press Ctrl+g to toggle between English and Hindi)<br>
   <input type="text" id="myid" name="myname">
  </body>
</HTML>

и typemarathi.js

google.load ("elements", "1", { пакеты: «транслитерация» });

  function onLoad() {
    var options = {
        sourceLanguage:
            google.elements.transliteration.LanguageCode.ENGLISH,
        destinationLanguage:
            [google.elements.transliteration.LanguageCode.MARATHI],
        shortcutKey: 'ctrl+g',
        transliterationEnabled: true
    };

    // Create an instance on TransliterationControl with the required
    // options.
    var control =
        new google.elements.transliteration.TransliterationControl(options);

    // Enable transliteration in the editable DIV with id
    // 'transliterateDiv'.
    control.makeTransliteratable([myname]);
  }
 google.setOnLoadCallback(onLoad);

работает нормально. Но если я напишу текстовое поле в extjs

Ext.onReady(function(){
var form1=new Ext.FormPanel({
            renderTo:document.body,
            frame:true,
            title:'My First Form',
            widyh:250,
            items:[{
                xtype:'textfield',
                fieldLabel:'First name',
                name:'firstname'

                    }
                ]
});
});

и попытайтесь передать имя (атрибут name) в control.makeTransliteratable ([имя]) ) тогда это не работает ... он говорит "неверный идентификатор ошибки". Но если я передам -> (html textfiled name to this) * control.makeTransliteratable ([myname]) , он будет работать нормально.

Ответы [ 3 ]

3 голосов
/ 25 февраля 2010

Да, мы можем!

1 голос
/ 25 февраля 2010

Я не понимаю, почему вы не смогли бы - на самом деле, я вполне уверен, что вы можете, как вы можете использовать его с другими средами, такими как jQuery или Prototype.

(Были ли у вас какие-либо специфические проблемы? Если это так, вы можете отредактировать свой вопрос, чтобы предоставить нам более подробную информацию)

0 голосов
/ 25 февраля 2010

Мне неясно, исходя из вашего кода, но если вы передаете строковое значение 'firstname' (с кавычками) в библиотеку Google, то это должно работать нормально, я бы предположил. Однако, если вы передаете ссылку на объект (как это выглядит в вашем примере), вам нужно будет передать базовую ссылку на поле, а не ссылку на объект Ext TextField (например, myTextField.getEl()).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...