如何从jQuery函数返回值?

时间:2015-05-08 23:59:20

标签: javascript jquery

我试图从jQuery函数返回值。这是我的功能:

 $('#output').keypress(function (event){ 
    var keycode = (event.keyCode ? event.keyCode : event.which);
    if(keycode == '13'){
        var read_lines = $('#output').val().split("\n");

        return  read_lines[read_lines.length-1];

    } 
    });

我希望将它返回的值保存在另一个变量

var newRead = functionName(event);
alert (newRead);

我怎么能这样做,因为我无法访问功能。提前谢谢!

2 个答案:

答案 0 :(得分:2)

在事件处理程序中,您应该调用其他函数而不是返回值。事件处理程序中的function(){}callback函数。

在您的情况下,您可以直接在keypress事件中打印它们:

$('#output').keypress(function (event){ 
    var keycode = (event.keyCode ? event.keyCode : event.which);
    if(keycode == '13'){
        var read_lines = $('#output').val().split("\n");

        alert(read_lines[read_lines.length-1]);
    } 
});

或者你可以这样做:

$('#output').keypress(function (event){ 
    var keycode = (event.keyCode ? event.keyCode : event.which);
    if(keycode == '13'){
        var read_lines = $('#output').val().split("\n");

        MyFunction(read_lines[read_lines.length-1]);
    } 
});

function MyFunction(result){
      alert(result);
}

答案 1 :(得分:1)

为了访问您的读取值,您需要类似以下的功能。

functionName(newRead){
   alert(newRead);
}
$('#output').keypress(function (event){ 
    var keycode = (event.keyCode ? event.keyCode : event.which);
    if(keycode == '13'){
        var read_lines = $('#output').val().split("\n");
         functionName(read_lines);
        //return  read_lines[read_lines.length-1];

    } 
    });