今回、非同期でPagerを使いたいと思っていたところ、PEARのPagerの中にonclickというオプションがあることが分かったので、使ってみました。
最新のPagerのパッケージを取得
自分が以前使っていたPagerのパッケージには、まだonclickのオプションは追加されていなかったので、こちらより取得。
PagerのCommon.phpを直す
自分の使い方が悪いの?か、onclickをオプションに追加しても、hrefが働いてしまっていたので、がパッケージ内のCommon.phpの840行目あたりを以下のように直した。
if ( $onclick == "" ) {
$url = $this->_url . $href;
} else {
$url = "javascript:void(0)";
}
return sprintf('<a href="%s"%s%s%s%s title="%s">%s</a>',
htmlentities($url, ENT_COMPAT, 'UTF-8'),
empty($this->_classString) ? '' : ' '.$this->_classString,
empty($this->_attributes) ? '' : ' '.$this->_attributes,
empty($this->_accesskey) ? '' : ' accesskey="'.$this->_linkData[$this->_urlVar].'"',
empty($onclick) ? '' : ' onclick="'.$onclick.'"',
$altText,
$linkText
);
Pager使用時にオプション追加
・’httpMethod’ => ‘GET’
・’onclick’ => ‘Javascriptの何か’
こんな感じで、一応非同期でのページ送りは出来るようになったけど、どうもPagerを手直ししたあたりが納得いきません。
ちゃんとした使い方が分かる方がいたら、教えて頂けるとありがたいです。







コメントを残す
コメントを投稿するにはログインしてください。