0

以下のスクリプトと noscript の JavaScript コードがあります。

<script type="text/javascript" src="https://www.google.com/recaptcha/api/challenge?k=6LfWqtgSAAAAAP1KwYFYGt0wDeJFtxznmqyRH_Q5">   </script>
    <noscript>
        <iframe src="https://www.google.com/recaptcha/api/noscript?k=6LfWqtgSAAAAAP1KwYFYGt0wDeJFtxznmqyRH_Q5"
            height="300" width="500" frameborder="0"></iframe>
        <br>
        <textarea name="recaptcha_challenge_field" rows="3" cols="40">      </textarea>
        <input type="hidden" name="recaptcha_response_field" value="manual_challenge">
    </noscript>

上記のコードは、サーバーから javascript 変数が設定されている場合にのみ、ページの本文に追加する必要があります。

var shouldShow = true;

        $document.ready(function() {

            if (shouldShow) {

                // add
            } else {

                // don't add
            }
        });

実行時にこれらのスクリプトを追加するにはどうすればよいでしょうか?

ありがとう、

4

2 に答える 2

1

Page.RegisterStartupScriptを使用できます

if (shouldShow) {

        Page.RegisterStartupScript...
}
于 2012-11-07T15:30:56.840 に答える
1

次のようにできます。

 var shouldShow = true;
 $document.ready(function() {
        if (shouldShow) {
           var newScript = document.createElement('script');
           newScript.type = 'text/javascript';
           newScript.src = 'https://www.google.com/recaptcha/api/challenge?k=6LfWqtgSAAAAAP1KwYFYGt0wDeJFtxznmqyRH_Q5';
           document.body.appendChild(newScript);
        } else { ... }

また、noscript は自由に無視できます。JS が有効になっていない場合にのみ表示されますが、その場合は追加されません。

asp:panelしかし、たとえば、いくつかの に単純に配置し、表示するかどうかに応じてその可視性を true/false に設定してみませんか? 一部のasp.net要素がelem.Visibility = falseブラウザに送信されない場合、そのすべてのコンテンツと同じです。

于 2012-11-07T15:34:08.907 に答える