1

GAE環境でJavaScriptコードにリクエストURLのパラメータを渡したいです。

たとえば、次の URL が入力されました。

http://example.com:8080/hello?key=abc

hello ページは、それぞれ以下に示す hello.py と hello.tmpl でレンダリングされました。

'''hello.py'''
key = self.request.get('key')

{# hello.tmpl #} 
<html>
  <div id="key">{{ key }}</div>
  <script src="hello.js"></script>
</html>

URLで指定したキーをhello.jsで参照するには、以下のように関数を記述します。

// hello.js
function() {
  console.log($('#key').text());
};

これはうまく機能し、パラメーターが URL から JavaScript コードに伝搬されたという当初の要求を満たしています。

しかし、それは賢明な方法ではないように感じました。URL と JavaScript コードの間のバッファーとして div タグを使用しました。これを行うためのよりスマートな方法を知っている人はいますか?

4

1 に答える 1

3

div を追加する代わりに、データ拡張機能を使用できます。

<body data-key='{{key}}'>
  <...>
</body>

// hello.js
function() {
  console.log($('body').data('key'));
};
于 2012-07-03T14:53:53.983 に答える