チェックボックスをクリックすると別のページにリダイレクトしたいです。jQueryの入力値を取得する
かなり簡単ですが、2番目のアラートが出力を生成しない理由はわかりません。 Internet Explorerに「オブジェクトはメソッドvalをサポートしていません」と表示されます。
this.getAttribute( 'value')を使用すると動作します - なぜそれがjquery val()で動作しないのですか?
チェックボックスをクリックすると別のページにリダイレクトしたいです。jQueryの入力値を取得する
かなり簡単ですが、2番目のアラートが出力を生成しない理由はわかりません。 Internet Explorerに「オブジェクトはメソッドvalをサポートしていません」と表示されます。
this.getAttribute( 'value')を使用すると動作します - なぜそれがjquery val()で動作しないのですか?
使用
alert(jQuery(this).val());
これはjQueryオブジェクトではないためです。 $(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();
});
});
あなたは、単に使用することができます
DOM要素なので、jQueryオブジェクトを作成する必要があります。にそれら
$(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" />
+1シンプルポイント。エラーを確認する – kommradHomer
ああ、はい。もちろん!ありがとう。 – reggie