Javascript 为什么在第二次单击后更新我的值
这是我的“exchange转换器”页面 当我想将我的课程从销售改为购买,然后单击按钮购买或出售时,改变率,但输出但结果不变的字段的变化率Javascript 为什么在第二次单击后更新我的值,javascript,html,Javascript,Html,这是我的“exchange转换器”页面 当我想将我的课程从销售改为购买,然后单击按钮购买或出售时,改变率,但输出但结果不变的字段的变化率 <html> <head> <title></title> <script src="//cdn.jsdelivr.net/jquery/2.1.1/jquery.min.js"></script> </head> <body> <
<html>
<head>
<title></title>
<script src="//cdn.jsdelivr.net/jquery/2.1.1/jquery.min.js"></script>
</head>
<body>
<script>
function fn_cross(c) {
switch (c) {}
}
$(document).ready(function() {
buyCours();
});
function changeCourse(buttonValue) {
if (buttonValue == ("buyUAH")) {
buyCours();
} else {
sellCours();
}
}
function buyCours() {
var myData = {
"operation": "changeCourse",
"exchangeCall": "buy"
};
$.ajax({
type: "GET",
url: "/ConventerServlet",
data: {
jsonData: JSON.stringify(myData)
},
dataType: "json",
//if received a response from the server
success: function(data) {
document.getElementById('exchangeUSD').value = data.exchangeUSD;
document.getElementById('exchangeRUB').value = data.exchangeRUB;
document.getElementById('exchangeEUR').value = data.exchangeEUR;
}
});
count($("#inputValue").val())
}
function sellCours() {
var myData = {
"operation": "changeCourse",
"exchangeCall": "sell"
};
$.ajax({
type: "GET",
url: "/ConventerServlet",
data: {
jsonData: JSON.stringify(myData)
},
dataType: "json",
//if received a response from the server
success: function(data) {
document.getElementById('exchangeUSD').value = data.exchangeUSD;
document.getElementById('exchangeRUB').value = data.exchangeRUB;
document.getElementById('exchangeEUR').value = data.exchangeEUR
}
});
count($("#inputValue").val())
}
function isNumberKey(evt) {
var charCode = (evt.which) ? evt.which : event.keyCode
if (charCode > 31 && (charCode != 46 && charCode != 44 && (charCode < 48 || charCode > 57)))
return false;
return true;
}
function count(inputValue) {
console.log(inputValue);
if (inputValue != "") {
document.getElementById("conventUSD").value = ($("#exchangeUSD").val() * inputValue);
document.getElementById("conventEUR").value = ($("#exchangeEUR").val() * inputValue);
document.getElementById("conventRUB").value = ($("#exchangeRUB").val() * inputValue);
} else {
var defaultValue = "0.00";
document.getElementById("conventUSD").value = defaultValue;
document.getElementById("conventEUR").value = defaultValue;
document.getElementById("conventRUB").value = defaultValue;
}
}
</script>
<div class="USD">
<h2 style="text-align: center">UAH</h2> I want
<input type="button" id="buyUAH" onclick="changeCourse(this.id)" value="Buy">
<input type="button" id="sellUAH" onclick="changeCourse(this.id)" value="Sell">
<label for="inputValue"></label>
<input type="text" value="0.00" onkeypress="return isNumberKey(event)" onkeyup="count(this.value)" onfocus="if (this.value == '0.00') this.value='';" onblur="if (this.value == '') {this.value = '0.00'; }" id="inputValue" style="width: 100px;margin-bottom: 30px">
<select id="fn_c1" onchange="fn_cross(this.value)">
<option selected="" value="840">USD</option>
<option value="978">EUR</option>
<option value="643">RUB</option>
<option value="1">UAH</option>
</select>
<br/>Result
<br/>
<li>
<input type="text" readonly value="0.00" onblur="if (this.value == '') {this.value = '0.00'; }" id="conventUSD"> USD
<input style="width: 50px" readonly id="exchangeUSD">
</li>
<li>
<input type="text" readonly value="0.00" onblur="if (this.value == '') {this.value = '0.00'; }" id="conventRUB"> RUB
<input style="width: 50px" readonly id="exchangeRUB">
</li>
<li>
<input type="text" readonly value="0.00" onblur="if (this.value == '') {this.value = '0.00'; }" id="conventEUR"> EUR
<input style="width: 50px" readonly id="exchangeEUR">
</li>
</div>
</body>
</html>
功能fn_交叉(c){
开关(c){}
}
$(文档).ready(函数(){
buyCours();
});
函数更改过程(按钮值){
如果(按钮值==(“buyUAH”)){
buyCours();
}否则{
sellCours();
}
}
函数buyCours(){
var myData={
“操作”:“变更课程”,
“exchangeCall”:“购买”
};
$.ajax({
键入:“获取”,
url:“/ConventerServlet”,
数据:{
jsonData:JSON.stringify(myData)
},
数据类型:“json”,
//如果收到来自服务器的响应
成功:功能(数据){
document.getElementById('exchangeUSD')。value=data.exchangeUSD;
document.getElementById('exchangeRUB')。value=data.exchangeRUB;
document.getElementById('exchangeEUR')。value=data.exchangeEUR;
}
});
计数($(“#inputValue”).val()
}
函数sellCours(){
var myData={
“操作”:“变更课程”,
“exchangeCall”:“出售”
};
$.ajax({
键入:“获取”,
url:“/ConventerServlet”,
数据:{
jsonData:JSON.stringify(myData)
},
数据类型:“json”,
//如果收到来自服务器的响应
成功:功能(数据){
document.getElementById('exchangeUSD')。value=data.exchangeUSD;
document.getElementById('exchangeRUB')。value=data.exchangeRUB;
document.getElementById('exchangeEUR')。value=data.exchangeEUR
}
});
计数($(“#inputValue”).val()
}
函数isNumberKey(evt){
var charCode=(evt.which)?evt.which:event.keyCode
如果(charCode>31&&(charCode!=46&&charCode!=44&&(charCode<48 | | charCode>57)))
返回false;
返回true;
}
函数计数(inputValue){
console.log(输入值);
如果(输入值!=“”){
document.getElementById(“conventUSD”).value=($(“#exchangeUSD”).val()*inputValue);
document.getElementById(“conventEUR”).value=($(“#exchangeEUR”).val()*inputValue);
document.getElementById(“conventRUB”).value=($(“#exchangeRUB”).val()*inputValue);
}否则{
var defaultValue=“0.00”;
document.getElementById(“conventUSD”).value=defaultValue;
document.getElementById(“conventEUR”).value=defaultValue;
document.getElementById(“ConventUrb”).value=defaultValue;
}
}
啊,我要
美元
欧元
摩擦
乌阿
结果
美元
摩擦
欧元
请帮我解决这个问题,告诉我哪里的错误和如何修复它 我想问题出在你的ajax请求中 在本文中,我刚刚用硬编码值替换了ajax调用,一切正常:
// idx definition
var idx = 0;
...
document.getElementById('exchangeUSD').value = 444 + idx;
document.getElementById('exchangeRUB').value = 444 + idx;
document.getElementById('exchangeEUR').value = 444 + idx;
idx++;
我希望这会有所帮助=)但我的值不是静态的,当按下按钮时它们会改变OK,我已经在JSFIDLE上更改了代码,所以现在每次单击值都会改变,而且一切都正常