任何人都可以帮我解决如何从单个文本框中获取或读取两个值。 即,当我读取第一个值时,它应该存储在字符串str1中,当单击操作符按钮时,文本框将被清除但必须知道单击了哪个操作符按钮并且shld等待接受第二个值。第二个值存储在str2中。 这就像一个简单的计算器,我们在一个文本框中输入许多数字。 谢谢 这是我的代码:
window.onload = function () {
var value1 = "", value2 = "", result="";
document.getElementById('btnone').addEventListener('click', function () {
document.getElementById('textBox').value = document.getElementById('textBox').value + document.getElementById('btnone').value;
value1 = document.getElementById('textBox').value;
});
document.getElementById('btntwo').addEventListener('click', function () {
document.getElementById('textBox').value = document.getElementById('textBox').value + document.getElementById('btntwo').value;
value2 = document.getElementById('textBox').value;
});
document.getElementById('btnadd').addEventListener('click', function () {
document.getElementById('textBox').value = document.getElementById('textBox').value + document.getElementById('btnadd').value;
});
document.getElementById('btneql').addEventListener('click', function () {
result = value1 + value2;
});
答案 0 :(得分:0)
您可以使用Jquery
执行此操作通过 def other_process
if attr
MyModel.some_process
rake "my:rake:task"
command "/usr/bin/my_great_command"
end
end
every 3.hours do
MyModel.other_process
end
事件获取您输入的值click()
增加金额
清除您的输入$('.YourInput').val()
使用Javascript:
如果用户单击数字按钮:0-9,该值将与前一个值连接,如果用户单击$('.YourInput').val("")
操作,文本字段中的给定值将被记忆,直到用户给出新值并且点击plus
操作。
Fiddle
equal
var value1=value2=result=0;
function calc(val) {
value1= parseInt(document.getElementById(val).value);
document.getElementById("textBox").value=document.getElementById("textBox").value+value1;
value1=parseInt(document.getElementById("textBox").value);
}
function DoSumm(){
document.getElementById("textBox").value="";
value2=value1;
value1=0;
}
function FindResult(){
result=value1+value2;
alert(result);
document.getElementById("textBox").value=result;
}
答案 1 :(得分:0)
您应该发布相关的HTML,否则我们必须对其进行逆向工程。无论如何,也许你有类似的东西:
<form>
<input type="button" id="btnone" name="btnone" value="0">
<br>
<textarea name="textBox"></textarea>
<br>
<input type="button" id="btntwo" name="btntwo" value="0">
<br>
<input type="button" id="btnadd" name="btnadd" value="Add">
<br>
<input type="button" id="btneql" name="btneql" value="Equal">
<br>
<input type="text" readonly name="result">
</form>
在你的功能中你有:
window.onload = function () {
var value1 = "", value2 = "", result="";
变量在javascript中没有类型,因此除非您打算实际使用它,否则将它们初始化为值是没有意义的,所以:
var value1, value2, result;
然后有:
document.getElementById('btnone').addEventListener('click', function () {
document.getElementById('textBox').value = document.getElementById('textBox').value + document.getElementById('btnone').value;
value1 = document.getElementById('textBox').value;
});
这么少的工作代码!如果使用 addEventListener 添加侦听器,则该元素将在函数中 this 。此外,您可以使用表单控件的名称将它们作为表单的命名属性引用,所以:
var textBox = this.form.textBox;
textBox.value = textBox.value + this.value;
你没有说 btnone 的值是什么(我假设它为零),但无论如何它都是一个字符串,文本框的值也是如此。所以你需要将它们转换为Numbers,否则+
会进行连接而不是添加。简单的方法是使用一元+运算符,所以:
textBox.value = +textBox.value + +this.value;
然后你做:
value1 = document.getElementById('textBox').value;
所以 value1 再次是一个字符串,所以按照其他顺序执行:
value1 = +textBox.value + +this.value;
textBox.value = value1;
继续......代码看起来很不稳定,我真的不知道以下是否有你想要做的事情(特别是 btnadd 元素上的监听器),至少它“作品”:
window.onload = function () {
var value1 = "", value2 = "", result="";
document.getElementById('btnone').addEventListener('click', function () {
var textBox = this.form.textBox;
value1 = +textBox.value + +this.value;
textBox.value = value1;
});
document.getElementById('btntwo').addEventListener('click', function () {
var textBox = this.form.textBox;
value2 = +textBox.value + +this.value;
textBox.value = value2;
});
document.getElementById('btnadd').addEventListener('click', function () {
var textBox = this.form.textBox;
textBox.value = value1 + value2;
});
document.getElementById('btneql').addEventListener('click', function () {
result = value1 + value2;
this.form.result.value = result;
});
};