我有一个输入框和一个转到按钮。当用户单击go按钮时,我想将插入的值与另一个值进行比较。我试图在这样的函数中获取输入值
function getInput(){
var entry ='';
$('button.go').on('click',function(){
var entry = $(this).siblings('.input').val();
//return entry
})
return entry
}
基本上我想返回有输入值的var条目,所以我可以稍后在代码中比较这些值
var input = getInput() // this should have input value
is input > othervalue
我在document.ready()
中调用了getInput答案 0 :(得分:1)
你正在做的一切正确。有些范围相关的问题无法帮助您获得预期的结果。我的建议是将othervalue
变量定义为全局,并在函数内部检查它,如
function getInput(){
$('button.go').on('click',function(){
var entry = $(this).siblings('.input').val();
if(entry>othervalue) //your code
});
}
我不确定您为何在函数内绑定动态click
事件。如果除了这部分之外没有其他任何你需要做的事情,那么将这段代码包装在document.ready
内。
答案 1 :(得分:0)
我建议全局声明你的var entry ='';
并在比较之前分配它。
var entry="";
$('button.go').on('click',function(){
entry = $(this).siblings('.input').val();
});
//do the comparing..
答案 2 :(得分:0)
您应该在委派点击功能之后,在功能内进行比较。
var entry = "";
$('button.go').on('click', function(){
var entry = $(this).prev('.input').val();
if (entry < x)
// Do something
});
答案 3 :(得分:0)
我还不清楚你想要完成什么。
我做了一些可能接近你想要的代码。
jQuery().ready(function()
{
var startValue = $('input[name="the_input"]').val();
$('form').submit(function()
{
var currentValue = $('input[name="the_input"]').val();
$('body').append('<br />' + startValue + ' - ' + currentValue + ' = ' + (startValue - currentValue));
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<form action="#" method="post">
<input type="text" value="10" name="the_input" /><br />
<input type="submit" value="go!" />
</form>