使用jquery在函数外部获取值

时间:2011-07-28 17:26:03

标签: jquery

你能告诉我如何使用jquery获取函数之外的值。

var getvalue;

$(':text').click(function(){

//here i am set this value in getvalue variable getvalue=$(this).val()

});

alert(getvalue);//i am not getting value here

3 个答案:

答案 0 :(得分:2)

var getvalue = null;
$(':text').click(function(){

//here i am set this value in getvalue variable getvalue=$(this).val()

});

alert(getvalue);//i am not getting value here

因为存在语法错误

$(':text')

不是

$(":text')

答案 1 :(得分:0)

jQuery事件处理程序允许您将任意数据传递给函数,该函数可以通过event.data访问。

请参阅http://api.jquery.com/click/http://api.jquery.com/bind/

这是有效的,因为正如bind()页面所说,当函数改变变量时,变量的原始值将被改变: “请注意,对象通过引用传递给函数,这使这种情况更加复杂。”

另请注意用户Jason Simon对click()页面的评论,该页面说明click()参数的正确顺序是相反的:

“我认为文档是错误的,至少我必须使用它。它的工作原理如下:

.click(handler(eventObject),eventDataArray);“

var getvalue = null;

$(':text').click(function(eventData, eventObject){
    //here i am set this value in getvalue variable getvalue=$(this).val()
        getvalue = eventObject.data.someValue;
    });

alert(getvalue);//i am not getting value here

答案 2 :(得分:0)

这对我来说很好!

检查jsfiddle:http://jsfiddle.net/6qp32/2/

<input type="text" value="val" />
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js" type="text/javascript"></script>
<script>
    var getvalue;

$(':text').click(function(){

   getvalue = $(this).val()
});
a = setInterval('console.log(getvalue)', 500);
</script>