2015-04-12 3 views
3

Я использую intl-tel-input, плагин jQuery для международных телефонных номеров, для одного из моих проектов. Плагин утверждает, что «Автоматически установить входной заполнитель на примерный номер для выбранной страны», но я не могу заставить его работать правильно. До сих пор я пробовал 2 вещи:Плагин jQuery для международных телефонных номеров: флаги и номер телефона отсутствуют

1) Я загрузил библиотеку и ссылался на один из своих JS-файлов из своего кода (аналогично the demo). Вот отрывок из моего JS файла:

$("#phone").intlTelInput({ 
    allowExtensions: false, 
    autoFormat: true, 
    autoHideDialCode: false, 
    autoPlaceholder: true, 
    defaultCountry: "ng", 
    ipinfoToken: "yolo", 
    nationalMode: true, 
    numberType: "MOBILE", 
    onlyCountries: ['ng', 'us', 'gb'], 
    preferredCountries: [], 
    utilsScript: "/projects/intl-tel-input-master/lib/libphonenumber/build/utils.js" 
    }); 

, но я получил следующее сообщение об ошибке в консоли JS в Chrome:

XMLHttpRequest не может загрузить файл: /// проектов/междунар-тел-вход- мастер/Lib/libphonenumber/сборки/utils.js. Запросы на кросс-начало поддерживаются только для схем протокола: http, data, chrome, chrome-extension, https, chrome-extension-resource.

2) Я положил библиотечную папку на сервер и ссылался на файл utils.js с URL-адресом сервера (http://web.mit.edu/aizhan/www/intl-tel-input-master/lib/libphonenumber/build/utils.js). Это до сих пор не работает на моей машине, но он работает в codepen с протоколом HTTP, но не с HTPPS:

HTTP: http://codepen.io/atoregozh/pen/raEPbv
HTTPS: https://codepen.io/atoregozh/pen/MYMLXv

Мой общий вопрос: как я мог бы сделать работу библиотеки на местном уровне? У меня также есть 2 подзапроса: 1) Как исправить ошибку загрузки XMLHttpRequest? (Я читал об этом раньше из других сообщений в stackoverflow, и я не хочу связываться с настройками безопасности); 2) Почему код работает через HTTP, но не через HTTPS?

Я был бы очень признателен за вашу помощь. Если вы хотите, чтобы увидеть фактический код проекта, the index.html file is here и Javascript file is here

ответ

0

вопрос: как я мог сделать работу библиотеки на местном уровне?

вы используете в Yeoman, ExpressJs или IIS Express.

например (запустить сервер): йомен сервер

Я тест на IIS Express, демо-файл является правильным.

вопрос: Как исправить ошибку в загрузке XMLHttpRequest?

вы загружаете ресурс на другом сервере (кросс-домен), я предпочитаю загрузку прокси-сервера в текущем сервере. Для решения этой проблемы см. 'Loading cross domain html page with jQuery AJAX'.

другой вопрос: Почему код работает через HTTP, но не через HTTPS?

если вы видите консоль браузера, включая код ниже.

Loading mixed (insecure) display content "" on a secure page. 
Blocked loading mixed active content "http://web.mit.edu/aizhan/www/intl-tel-input-master/build/js/intlTelInput.js" 

решить проблему в светлячок link

если страница HTTPS включает содержимое HTTP, HTTP-часть может быть прочитан или изменен злоумышленниками, даже если главная страница подается через HTTPS.

удачи.

+0

также «[Что такое JSONP все] (http://stackoverflow.com/questions/2067472/what-is-jsonp-all-about) ' –

+0

можно напрямую загрузить с CDN, как указано в их документации github – Niraj

Смежные вопросы