2015年2月24日火曜日

td内でfloatで横並びしたときに表示が崩れる件

td内でfloatで横並びにすると

<table>
<tr>
  <td>test</td>
  <td>
    <div style="float">aaaa</div>
    <div style="float">bbbb</div>
  </td>
<tr>
</table>





のようにtdの位置が下揃えになってしまいます。
ブラウザの幅で折り返しているので、dddの位置が一番高いことになりそこに合わされているためです。

vertical-align:topで上揃えにすることで解消できます。

<table>
<tr>
  <td>test</td>
  <td style="vertical-align:top">
    <div style="float">aaaa</div>
    <div style="float">bbbb</div>
  </td>
<tr>
</table>



2015年2月18日水曜日

メソッドのオーバーライド時のエラーを回避する

とあるメソッドをオーバーライドしたとき

Declaration of %s::%s() should be compatible with that of %s::%s()

というエラーが発生しました。

これは親クラスのメソッドと引数が異なるのが原因でした。
http://www.1x1.jp/blog/2007/11/php_e_strict_message.html

しかし
親クラス
public function getUserInfo( $a ){

子クラス
public function getUserInfo( $a, $b = NULL, $c = NULL ){

のようにデフォルト値を持つ引数は追加できるのでこの方法で回避できます。

2015年2月16日月曜日

Ajax通信のsuccess時に自身の関数に返す処理


successに自身の関数を呼び出せばいいようです。

//コールバック
function result_test_callback(result){

  $('#result_site_patrol_message_member').html(result);

  $('input:button[name=shuffle_message_member]').click(function(){

    if (confirm('再抽選を実行してよろしいですか?')) {

      if(xhr_shuffle){
        xhr_shuffle.abort();
      }

      xhr_shuffle = $.ajax({
        url  : url,
        type : "post",
        processData : false,
        data : post_data,
        dataType : "json",
        async : false,
        cache : false,
        success : result_test_callback ←これ 
            });

   }
 });

}