NAME
Waft::JS - JavaScript extensions for Waft
SYNOPSIS
package MyWebApp;
use Waft with => '::JS'; # for Waft 0.9905 or later
or
package MyWebApp;
use base qw( Waft::JS Waft );
DESCRIPTION
Waft のアクションメソッドを起動する JavaScript API を提供する。
JavaScript API
Waft.JS.url
Arguments: page, [keys], [data]
Waft
のメソッドurl
と同様の動作を行う JavaScript 用のメソッド。page には
Waft
のpage
を指定する。keys には保持したい
Waft
のオブジェクト変数のキーを配列で指定する。data には追加したい
Waft
のオブジェクト変数のキーと値のペアを 連想配列で指定する。<% $self->{page} = 0; $self->set_values( sort => qw( id ASC ) ); %> Waft.JS.url('record.html', ['page', 'sort'], { id: 1 }); mywebapp.cgi?p=record.html&v=id-1+page-0+sort-id-ASC
Waft.JS.url
は、実際は JavaScript のメソッドではなく、Waft::convert_text_part
をオーバーライドするWaft::JS::convert_text_part
がテンプレート処理時にスクリプトに 置き換えるためのフレーズである。Waft.JS.url
は、
$self->output_js_make_url_script;
に置き換えられ、
( function (page, keys, data) { var base_url = ' ...
のように出力される。
AUTHOR
Yuji Tamashiro, <yuji@tamashiro.org>
COPYRIGHT AND LICENSE
Copyright (C) 2008, 2009 by Yuji Tamashiro
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.