Javascript-计算和比较
我正在学习JS,在我的实践中,我无法让脚本的第二部分为我工作 我有3个输入(Javascript-计算和比较,javascript,compare,calculator,comparator,calc,Javascript,Compare,Calculator,Comparator,Calc,我正在学习JS,在我的实践中,我无法让脚本的第二部分为我工作 我有3个输入(#ancho-#fondo-#alto),其中我写整数作为它们之间的乘法,然后是除法此部件工作正常 现在问题来了: <input id="ancho"> <!-- Example value="22" --> <input id="fondo"> <!-- Example value="20" --> <input id="alto"> <!-- Exam
#ancho-#fondo-#alto
),其中我写整数作为它们之间的乘法,然后是除法此部件工作正常
现在问题来了:
<input id="ancho"> <!-- Example value="22" -->
<input id="fondo"> <!-- Example value="20" -->
<input id="alto"> <!-- Example value="16" -->
<input id="peso"> <!-- Example value="3" -->
<div id="resultado"></div>
<div id="hacercalculo" onclick="calcular();comparar()">Calcular</div>
<!--css display none-->
<div id="uno">1</div>
<div id="dos">2</div>
<div id="tres">3</div>
https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.4/jquery.min.js
// Calculate - This part works fine
function calcular(){
v1 = document.getElementById("ancho").value;
v2 = document.getElementById("fondo").value;
v3 = document.getElementById("alto").value;
r = v1*v2*v3/4000;
//document.getElementById("resultado").value = r;
document.getElementById("resultado").innerHTML = r;
};
//=============
// Compare - This, It does not work for me
function comparar() {
var camp1= document.getElementById("resultado");
var camp2= document.getElementById("peso");
//if (camp1.value >= 0 && camp2.value <= 3) {
//if (camp1.innerText >= 0 && camp2.innerText <= 3) {
//if (camp1.innerHTML >= 0 && camp2.value <= 3) {
if (camp1.innerText >= 0 && camp2.value <= 3) {
$("#uno").show(); // This, It does not work for me
}
};
在第二部分中,我想比较值“r=“是否大于或小于输入#peso
中写入的数字(por用户),但这对我不起作用
我做错了什么
请参见中的演示
提前谢谢
HTML:
<input id="ancho"> <!-- Example value="22" -->
<input id="fondo"> <!-- Example value="20" -->
<input id="alto"> <!-- Example value="16" -->
<input id="peso"> <!-- Example value="3" -->
<div id="resultado"></div>
<div id="hacercalculo" onclick="calcular();comparar()">Calcular</div>
<!--css display none-->
<div id="uno">1</div>
<div id="dos">2</div>
<div id="tres">3</div>
https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.4/jquery.min.js
// Calculate - This part works fine
function calcular(){
v1 = document.getElementById("ancho").value;
v2 = document.getElementById("fondo").value;
v3 = document.getElementById("alto").value;
r = v1*v2*v3/4000;
//document.getElementById("resultado").value = r;
document.getElementById("resultado").innerHTML = r;
};
//=============
// Compare - This, It does not work for me
function comparar() {
var camp1= document.getElementById("resultado");
var camp2= document.getElementById("peso");
//if (camp1.value >= 0 && camp2.value <= 3) {
//if (camp1.innerText >= 0 && camp2.innerText <= 3) {
//if (camp1.innerHTML >= 0 && camp2.value <= 3) {
if (camp1.innerText >= 0 && camp2.value <= 3) {
$("#uno").show(); // This, It does not work for me
}
};
脚本:
<input id="ancho"> <!-- Example value="22" -->
<input id="fondo"> <!-- Example value="20" -->
<input id="alto"> <!-- Example value="16" -->
<input id="peso"> <!-- Example value="3" -->
<div id="resultado"></div>
<div id="hacercalculo" onclick="calcular();comparar()">Calcular</div>
<!--css display none-->
<div id="uno">1</div>
<div id="dos">2</div>
<div id="tres">3</div>
https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.4/jquery.min.js
// Calculate - This part works fine
function calcular(){
v1 = document.getElementById("ancho").value;
v2 = document.getElementById("fondo").value;
v3 = document.getElementById("alto").value;
r = v1*v2*v3/4000;
//document.getElementById("resultado").value = r;
document.getElementById("resultado").innerHTML = r;
};
//=============
// Compare - This, It does not work for me
function comparar() {
var camp1= document.getElementById("resultado");
var camp2= document.getElementById("peso");
//if (camp1.value >= 0 && camp2.value <= 3) {
//if (camp1.innerText >= 0 && camp2.innerText <= 3) {
//if (camp1.innerHTML >= 0 && camp2.value <= 3) {
if (camp1.innerText >= 0 && camp2.value <= 3) {
$("#uno").show(); // This, It does not work for me
}
};
//计算-这部分工作正常
函数演算(){
v1=document.getElementById(“ancho”).值;
v2=document.getElementById(“fondo”).value;
v3=document.getElementById(“alto”).value;
r=v1*v2*v3/4000;
//document.getElementById(“resultado”).value=r;
document.getElementById(“resultado”).innerHTML=r;
};
//=============
//相比之下,这对我来说不起作用
功能比较程序(){
var camp1=document.getElementById(“resultado”);
var camp2=document.getElementById(“比索”);
//如果(camp1.value>=0&&camp2.value=0&&camp2.innerText=0&&camp2.value=0&&camp2.value如果r
大于或小于peso
,则r!=peso
。以下comparer
函数应处理第二部分
function comparar() {
var camp1= document.getElementById("resultado").innerHTML;
var camp2= document.getElementById("peso").value;
if (Number(camp1) != Number(camp2)) {
$("#uno").show(); // condition met hence #uno rendered.
}
};
你的代码有一些问题,因此我没有工作
首先,您应该使用textContent获取值
var camp1=document.getElementById(“resultado”).textContent;
其次,您将检索两次该值
var camp2= document.getElementById("peso").value;
if (camp1 >= 0 && camp2.value <= 3)
var camp2=document.getElementById(“比索”).value;
if(camp1>=0&&camp2.value=0&&camp2=0&&camp2.value=0&&camp2只是对comparer()函数中“if语句”的一个小修改
文本内容必须转换为数字
if (Number(camp1.textContent) >= 0 && camp2.value <= 3) {
$("#uno").show();
}
if(Number(camp1.textContent)>=0&&camp2.value根据您所说的,您需要检查这些值在某个范围内,并且希望检查它是否有小数位数,因此我将创建两个函数来执行这两个检查
用于检查某个值是否在某个范围内的函数:
功能间隔(a、b、c){
return((b-a)*(b-c)'在第二部分中,我想比较值“r=”是否大于或小于输入比索中写入的数字(por用户),但这对我不起作用。'请查看r和权重之间的比较条件:if(camp1.innerHTML>=0&&camp2.value它应该类似于:if(camp1.innerHTML>=camp2.value){//true}
@AksJacoves…我理解您的方法(谢谢),但我想比较设置的值(介于0和1之间、介于1和3之间、介于3和5之间、介于5和10之间,等等)。有什么想法可以解决吗?谢谢!请重新阅读您在问题中所写的内容:在第二部分中,我想比较值“r=”是否大于或小于所写的数字(或用户)在输入#比索中,但它对我不起作用。是的,我还认为问题可能是将字符串与整数进行比较。