我有一个按钮和文本框,如下所示:
<button type="submit" id="go" style="width: 20px; height: 30px;"></button>
<input type="text" id="txt" />
我想编写一个脚本,当我在文本框中编写一个数字并单击按钮时,它会每隔5秒向mynumber(我在文本框中写入)添加一个。我写了这个脚本,但它不起作用!问题是什么? 我的剧本:
$("document").ready(
function () {
$("#go").click(
function () {
setInterval(
function () {
var values = $("txt").text();
values = values + 1;
$("txt").html(values);
}, 400);
});
});
答案 0 :(得分:3)
如下所示,问题很少
//it is document not 'document'
$(document).ready(function () {
var timer;
$("#go").click(function () {
clearInterval(timer);
timer = setInterval(function () {
//use id selector and .val() to get the value
var values = $("#txt").val();
//parse the string to int before adding 1
values = parseInt(values) + 1;
$("#txt").val(values);
}, 5000); //5 seconds is 5000 milli seconds
});
});
演示:Fiddle
答案 1 :(得分:2)
你应该改变:
$("txt")
至$("#txt")
$("txt").text();
至$("txt").val();
$("txt").html(values);
至$("txt").val(values);
纠正JSFiddle:http://jsfiddle.net/maximgladkov/eMbxp/
答案 2 :(得分:1)
使用
$("#txt").val()
而不是
$("txt").text()
答案 3 :(得分:1)
使用此: 它的运行:
$("document").ready(
function () {
$("#go").click(
function () {
setInterval(
function () {
var values = $("#txt").val(); //use .val() to take data from input element.
values = Number(values)+1; //var is not a integer so you have to put ,it inside a Number()
$("#txt").val(values); // use Id selector ' # ' in jQuery to select a element.
}, 5000);
});
});