0

URLに#を介して渡された値があります。これはチェックボックスのクラス名です。私がやろうとしているのは、jQueryを使用してそのチェックボックスIDの値を取得することです

// get hashtag value
if(self.document.location.hash){
var urlhash = self.document.location.hash;
var hashtagval = self.document.location.hash.replace("#","");

// get id of element from hashtagval (class name)
var counter = $('.'+hashtagval).attr('id');
}
4

1 に答える 1

0

OK、テストしたところ、#a と #b をハッシュに追加すると正常に動作します。

ハッシュ属性を悪用しています。ハッシュ属性は、ページのビューステートを定義するために使用され (たとえば、画面はこの段落に移動する必要があります)、いくつかのローカル変数を格納するのではなく、アプリケーション ロジックに使用されます!

<!doctype html>
    <html>
        <head>
            <meta charset="utf-8">
            <title>Demo</title>
            <script src="jquery.js"></script>
            <script>
                $(document).ready(function() {
                    var change = true;
                    $('#ba').click(function() {
                        // get hashtag value
                        if(self.document.location.hash) {
                            var urlhash = self.document.location.hash;
                            var hashtagval = self.document.location.hash.replace("#", "");

                            // get id of element from hashtagval (class name)
                            var id = $('.' + hashtagval).attr('id');
                            $('body').append('<h1>id=' + id);
                        }
                    });
                });
            </script>
        </head>
        <body>

            <button type="button" id="ba" >
                Click Me!
            </button>

            <div>
                <p id="foundthisthing" class="a">
                    Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
                </p>
                <p id="thisworkstoo"class="b">
                    eafdsaf dsa dgsf dgadg dfg dagfadgLorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
                </p>
            </div>
        </body>
    </html>
于 2012-09-12T08:59:23.677 に答える