繁体   English   中英

获取输入值 jQuery

[英]Get value of input in jQuery

单击复选框时,我想重定向到另一个页面。

<script type="text/javascript"><!--
$(document).ready(function(){
    jQuery(".cbno").click(function(e){
        e.preventDefault();
        alert('test');
        alert(this.val());
//      window.location = this.val();
    });
});
//-->
</script>

<input type="checkbox" class="cbno" name="content" value="/map/?filter=all" />

很简单——但我不明白为什么第二个警报不产生任何 output? Inte.net Explorer 说:“object 不支持方法 val”。

如果我使用 this.getAttribute('value') 它会起作用 - 为什么它不适用于 jquery val()?

采用

alert(jQuery(this).val());

$(this).val()$(this).attr("value")this.getAttriute("value")this.value中的任何一个都可以

请在 $() 和 jQuery() 上保持一致

<script type="text/javascript"><!--
$(document).ready(function(){
    $(".cbno").click(function(e){
        e.preventDefault();
        window.location = $(this).val();
    });
});
//-->
</script>

<input type="checkbox" class="cbno" name="content" value="/map/?filter=all" />

因为这不是 jQuery object。你需要使用 $(this).val();

改变:

alert(this.val());

到:

alert($(this).val());

$(this)指的是您之后的复选框。


您也可以简单地使用:

this.value

所以你可以这样修改你的代码:

$(document).ready(function(){
    jQuery(".cbno").click(function(e){
        e.preventDefault();
        alert(this.value);
        //window.location = this.value;
    });
});
$(document).ready(function(){
    jQuery(".cbno").click(function(e){
        e.preventDefault();
        alert('test');
        alert( $(this).val());
//      window.location = $(this).val();
    });
});

这在事件 function 中是指向 DOM 元素的链接,因此您应该使用它的方法创建一个 jQuery object 来获取它们

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM