Как насчет countryjs? Кажется, у вас есть то, что вы ищете.
Я также нашел это jsfiddle с некоторыми очень необработанными данными. Это может подойти вам, чтобы провести некоторое тестирование.
var country_arr = new Array("Afghanistan", "Albania", "Algeria", "American Samoa", "Angola", "Anguilla", "Antartica", "Antigua and Barbuda", "Argentina", "Armenia", "Aruba", "Ashmore and Cartier Island", "Australia", "Austria", "Azerbaijan", "Bahamas", "Bahrain", "Bangladesh", ...
/States
var s_a = new Array();
s_a[0] = "";
s_a[1] = "Badakhshan|Badghis|Baghlan|Balkh|Bamian|Farah ...
s_a[2] = "Berat|Bulqize|Delvine|Devoll (Bilisht)|Diber ...
countryjs, я уже пробовал, разве возвращения государства в любой стране, кроме США –
Я попытался jsfiddle, она не предоставляет города –