javascript中的交换程序
我正在尝试用javascript结合HTML和CSS代码编写一个exchange转换器。我在这里遇到的问题是,我无法将数字从一种货币转换为另一种货币,而有两个不同的框,一个用于输入值,另一个用于返回交换值。我的程序根本不转换任何东西。如果你能帮忙,我将不胜感激。 下面是我的全部代码:javascript中的交换程序,javascript,html,css,Javascript,Html,Css,我正在尝试用javascript结合HTML和CSS代码编写一个exchange转换器。我在这里遇到的问题是,我无法将数字从一种货币转换为另一种货币,而有两个不同的框,一个用于输入值,另一个用于返回交换值。我的程序根本不转换任何东西。如果你能帮忙,我将不胜感激。 下面是我的全部代码: <html> <head> <title> Converter </title> <style type="text/c
<html>
<head>
<title> Converter </title>
<style type="text/css">
div{
width:600px;
height:300px;
background-color:blue;
margin-right: 120px;
margin-top: 40px;
}
#box1{
width: 200px;
height: 200px;
background-color:red;
}
#box2{
width:200px;
height: 200px;
background-color:red;
}
p{
font-size:12pt;
font-family: arial, sans-serif;
}
nav { font-weight : bold;
color: white;
border : 2px solid royalblue;
text-align: center ;
width: 10em;
background-color : royalblue;}
nav ul { display: none;
list-style: none;
margin : 0;
padding: 0;}
nav ul li { border-top: 2px solid royalblue;
background-color : white;
width: 10em;
color: black;}
nav ul li:hover { background-color : powderblue;}
a { text-decoration: none;}
</style>
<script type="text/javascript">
function convert(){
if(document.getElementByOptionValue("txtList1")==Euro(EUR) && document.getElementByOptionValue("txtList2")==Albania(LEK)){
var eur=document.getElementById("first");
var e=parseFloat(eur.value);
if(!validateForm())
return;
var l=e*135.82;
var lek=document.getElementById("second");
lek.value=l;
}
if(document.getElementByOptionValue("txtList1")==Albania(LEK) && document.getElementByOptionValue("txtList2")==Euro(EUR)){
var lek=document.getElementById("first");
var l=parseFloat(lek.value);
if(!validateForm())
return;
var e=l*138.92;
var eur=document.getElementById("second");
lek.value=l;
}
}
function validateForm(){
var f=document.getElementById("first");
if(f.value==""){
alert("Jepni nje vlere");
f.focus();
return false;
}
if(isNaN(f.value){
alert("Vlera qe dhate nuk eshte numer");
f.focus();
return false;
}
return true;
}
</script>
</head>
<body>
<div id="box1">
<form action="">
<p>Type a country or a currency</p>
<p> <label for="txtList" >
<input type="text" id="txtList1"
placeholder="United States Dollars (USD)" list="currencies"/>
<datalist id="currencies">
<option value="United States Dollars (USD)">
<option value="Euro(EUR)">
<option value="Albania (LEK)">
<option value="Paunds (PAUND)">
</datalist>
</label></input></p>
<nav>Browse All
<ul>
<li><a href = "#" >United States Dollars (USD)</a></li>
<li><a href = "#" >Euro(EUR)</a></li>
<li><a href = "#" >Albania (LEK)</a></li>
<li><a href = "#" >Paunds (PAUND)</a></li>
</ul>
</nav>
<p>Please enter an amount </p>
<p><label>Currency:
<input name = "name" type = "text" id="first" size = "15"
maxlength = "10">
</label></p></div>
<input type="button" value="=" onclick="convert()"/>
<div id="box2">
<p>Type a country or a currency</p>
<p> <label for="txtList" >
<input type="text" id="txtList2"
placeholder="Euro (EUR)" list="currencies"/>
<datalist id="currencies">
<option value="United States Dollars (USD)">
<option value="Euro(EUR)">
<option value="Albania (LEK)">
<option value="Paunds (PAUND)">
</datalist>
</label></input></p>
<nav>Browse All
<ul>
<li><a href = "#" >United States Dollars (USD)</a></li>
<li><a href = "#" >Euro(EUR)</a></li>
<li><a href = "#" >Albania (LEK)</a></li>
<li><a href = "#" >Paunds (PAUND)</a></li>
</ul>
</nav>
<p>Please enter an amount </p>
<p><label>Currency:
<input name = "name" type = "text" id="second" size = "15"
maxlength = "10">
</label></p></div></form>
</body>
</html>
短代码:
function convert(){
if(document.getElementByOptionValue("txtList1")==Euro(EUR) && document.getElementByOptionValue("txtList2")==Albania(LEK)){
var eur=document.getElementById("first");
var e=parseFloat(eur.value);
if(!validateForm())
return;
var l=e*135.82;
var lek=document.getElementById("second");
lek.value=l;
}
if(document.getElementByOptionValue("txtList1")==Albania(LEK) && document.getElementByOptionValue("txtList2")==Euro(EUR)){
var lek=document.getElementById("first");
var l=parseFloat(lek.value);
if(!validateForm())
return;
var e=l*138.92;
var eur=document.getElementById("second");
lek.value=l;
}
}
function validateForm(){
var f=document.getElementById("first");
if(f.value==""){
alert("Jepni nje vlere");
f.focus();
return false;
}
if(isNaN(f.value)){
alert("Vlera qe dhate nuk eshte numer");
f.focus();
return false;
}
return true;
}
</script>
</head>
<body>
<div id="box1">
<form action="">
<p>Type a country or a currency</p>
<p> <label for="txtList" >
<input type="text" id="txtList1"
placeholder="United States Dollars (USD)" list="currencies"/>
<datalist id="currencies">
<option value="United States Dollars (USD)">
<option value="Euro(EUR)">
<option value="Albania (LEK)">
<option value="Paunds (PAUND)">
</datalist>
</label></input></p>
<nav>Browse All
<ul>
<li><a href = "#" >United States Dollars (USD)</a></li>
<li><a href = "#" >Euro(EUR)</a></li>
<li><a href = "#" >Albania (LEK)</a></li>
<li><a href = "#" >Paunds (PAUND)</a></li>
</ul>
</nav>
<p>Please enter an amount </p>
<p><label>Currency:
<input name = "name" type = "text" id="first" size = "15"
maxlength = "10">
</label></p></div>
<input type="button" value="=" onclick="convert()"/>
<div id="box2">
<p>Type a country or a currency</p>
<p> <label for="txtList" >
<input type="text" id="txtList2"
placeholder="Euro (EUR)" list="currencies"/>
<datalist id="currencies">
<option value="United States Dollars (USD)">
<option value="Euro(EUR)">
<option value="Albania (LEK)">
<option value="Paunds (PAUND)">
</datalist>
</label></input></p>
<nav>Browse All
<ul>
<li><a href = "#" >United States Dollars (USD)</a></li>
<li><a href = "#" >Euro(EUR)</a></li>
<li><a href = "#" >Albania (LEK)</a></li>
<li><a href = "#" >Paunds (PAUND)</a></li>
</ul>
</nav>
<p>Please enter an amount </p>
<p><label>Currency:
<input name = "name" type = "text" id="second" size = "15"
maxlength = "10">
</label></p></div></form>
</body>
</html>
我不确定你打算写什么。但现在它将适用于2组值。在第一个下拉列表中选择Euro并在文本框中输入一些数字。同样,在第二个下拉列表中选择“阿尔巴尼亚”,然后按“=”按钮。现在,第二个文本框将具有转换后的值 这将开始 转换器 div{ 宽度:600px; 高度:300px; 背景颜色:蓝色; 右边距:120px; 边缘顶端:40px; } 框1{ 宽度:200px; 高度:200px; 背景色:红色; } 框2{ 宽度:200px; 高度:200px; 背景色:红色; } p{ 字号:12号; 字体系列:arial,无衬线; } 导航{ 字体大小:粗体; 颜色:白色; 边框:2件纯蓝; 文本对齐:居中; 宽度:10em; 背景颜色:皇家蓝; } 导航ul{ 显示:无; 列表样式:无; 保证金:0; 填充:0; } 李国荣{ 边框顶部:2件纯蓝; 背景色:白色; 宽度:10em; 颜色:黑色; } nav ul li:悬停{ 背景色:粉蓝色; } a{ 文字装饰:无; } 函数转换{ 如果document.getElementById'txtList1'.value='EuroEUR'&&document.getElementByIdtxtList2.value=='albana LEK'{ var eur=document.getElementByIdfirst; var e=parseflogur.value; 如果!验证窗体 回来 var l=e*135.82; var lek=document.getElementByIdsecond; lek.value=l; } 如果document.getElementByIdtxtList1.value=='albana LEK'&&document.getElementByIdtxtList2.value=='EuroEUR'{ var lek=document.getElementByIdfirst; var l=parseFloatlek.value; 如果!验证窗体 回来 var e=l*138.92; var eur=document.getElementByIdsecond; 欧元价值=e; } } 函数validateForm{ var f=document.getElementByIdfirst; 如果f.value=={ alertJepni nje vlere; f、 重点; 返回false; } 如果是Nanf.value{ alertVlera qe dhate nuk eshte Num; f、 重点; 返回false; } 返回true; } 键入国家或货币 浏览全部 请输入金额 货币: 键入国家或货币 浏览全部 请输入金额 货币:
ifisNaNf.value{…出现语法错误,我修复了此错误,但也存在相同的问题。请将此问题归结为20-30行代码。好的。我将在消息下方编写简短的代码。我很高兴您的问题得到解决。为了将来的参考,我将向您解释 得到否决票的原因是,您的问题没有表现出任何演示效果:您只是复制了整个代码,而没有创建一个脚本或解释关键功能。如今,这里的人们希望在适用的地方这样做,通常,这也能帮助你自己发现问题。始终将代码减少到出现问题所需的绝对最小值—98%的几率您会发现这只是一个小错误。请求帮助应该是最后的手段。