Не могу получить данные с файла xml
ДД! По аналогии кода, представленного тут, хотела сделать конвертер валют, но почему-то не работает ;(( Помогите пожалйуста разобраться в чем проблема. Файл рабочий. Спасибо!
<!DOCTYPE html>
<html>
<head>
<title>Currency</title>
</head>
<body>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
USD<input type='text' id='val1'>
KZT<input type='text' id='res' disabled><br>
KZT<input type='text' id='val2'>
USD<input type='text' id='res2' disabled><br>
<script>
var course = 0;
$.ajax({
type: 'get',
url: 'https://nationalbank.kz/rss/rates_all.xml',
dataType: 'xml',
success: function(response) {
$(response).find("item").each(function(i,elem) {
if($(elem).find('title').text() == 'USD') {
course = +$(elem).find('description').text();
}
})
}
});
$('input').on('keyup',function(){
var value1, value2;
value1 = parseFloat($('#val1').val()).toFixed(2);
value2 = parseFloat($('#val2').val()).toFixed(2);
//KZT to USD
if(value2 <= 30000){
$('#res2').val(value3 * 0.99 / course);
}
if(value2 >= 100000){
$('#res2').val((value3 * 0.9) / course);
}
if(value2 >= 1600){
$('#res2').val((value3 * 0.8) / course);
}
//USD to KZT
if(value1 <= 100){
$('#res').val(value1 * 0.99 * course);
}
if(value1 >= 1000){
$('#res').val(value1 * 0.9 * course);
}
if(value1 >= 10000){
$('#res').val(value1 * 0.8 * course);
}
});
</script>
</body>
</html>
|
Там CORS ошибка возникает
Access to XMLHttpRequest at 'https://nationalbank.kz/rss/rates_all.xml' from origin 'http://*****' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. |
Цитата:
Если вам нужен конвертер валют из тенге в доллары и обратно без манипуляции сознанием и кошельком, то можно переделать ваш код так...
<!DOCTYPE html>
<html>
<head>
<title>Currency</title>
</head>
<body>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
USD<input type="number" id="val1">
KZT<input type="number" id="res" disabled><br>
KZT<input type="number" id="val2">
USD<input type="number" id="res2" disabled><br>
<script>
$.ajax({
type: "get",
url: "https://cors-everywhere.glitch.me/https://nationalbank.kz/rss/rates_all.xml",
dataType: "xml",
success: function(xml) {
rate = xml.evaluate("//item[title = 'USD']/description", xml, null, XPathResult.NUMBER_TYPE).numberValue;
}
});
var rate = 0;
$("input").on("input", function() {
var value1 = parseFloat($("#val1").val());
var value2 = parseFloat($("#val2").val());
$("#res").val(value1 * rate);
$("#res2").val(value2 / rate);
});
</script>
</body>
</html>
|
spasibo koliuchka
Да, мой код намного больше, поэтому много версий было, проект большой, запуталась какую часть отправила, и да я говорила что исходный код не мой. И с этим фаилом по такой аналогии не работалось, и да мне нужны были манипуляции. Вы очень помогли, спасибо большущее!
|
| Часовой пояс GMT +3, время: 08:58. |