<input type="text" value="22222" id="t1" />    <script type="text/javascript">
    (function(e) {
        vMethod = {
            vName: function() {
                var k = e(this);
                k.val().trim();
                return k.val();
            },
            vCell: function() {
                //.................
                return "333";
            }
        }
        $("#t1").bind({ focus: function() {
            var v = vMethod.vName();
            alert(v);
        }
        });    })(jQuery);希望弹出值为“22222”,如何实现?

解决方案 »

  1.   


     $("#t1").bind('focus', function() {
            });//bind()应该这样写。。
      

  2.   


       $("#t1").bind( 'focus',function() {
                  alert(this.value);
            });
    这样写楼主能接受不?
      

  3.   

    楼主是想用一个独立的函数,不带参数地获取当前事件对象的一些属性吧?我试了试,这样能行。
        (function(e) {

            vMethod = {
                vName: function() {
                    var k = e(arguments.callee.caller.caller.arguments[0].currentTarget);
                    k.val().trim();
                    return k.val();
                },
                vCell: function() {
                    //.................
                    return "333";
                }
            }
            $("#t1").bind({ focus: function() {
                alert(vMethod.vName());
            }
            });    })(jQuery);
      

  4.   

    当然不行哦
    vMethod函数 是不允许改变的
      

  5.   

        <script type="text/javascript">
        (function(e) {
            vMethod = {
                vName: function() {
                    var k = e(this);
                    return k.val();
                },
                vCell: function() {
                    return "333";
                }
            }
            $("#t1").bind({ focus: function() {
                var v = vMethod.vName.call(this);
                alert(v);
            }
            });    })(jQuery);
    </script>
      

  6.   

    call()真是奇妙,谢谢“jack420124”