purazumakoiの[はてなブログ]

技術メモから最近はライフログも増えてきてます。

フォームに値を自動入力するGreasemonkeyを作った。

フォームのテスト送信で毎回入力するのって結構大変なんですよね。

僕のFirefoxだとテキスト入力欄をダブルクリックすると履歴が出てきたりするけどそれでも面倒だったのでとりあえず作ってみました。


via(jQueryロード部分)
newbie on xxx(iphone,object-c,ajax,ruby,javascript,html and more...): GreasemonkeyでjQueryを使用する方法

(function() {
 
 // ここに入れたい値を入れる start ////////////////////
 function letsJQuery() {
  $("#txt_year").val( now.getFullYear() ); // 年テキスト
  $("#txt_month").val( now.getMonth()+2 ); // 月テキスト
  $("#txt_date").val( now.getDate() ); // 日テキスト
  $("#sel_time").val( 1 );  // select
 }
 // ここに入れたい値を入れる end ////////////////////


 var now = new Date();
 
 // そもそもformタグがあるかチェック
 var formTags = document.getElementsByTagName("form");
 if( formTags.length ) {
  
  // jqueryがscript内で既に書かれているかチェック
  var rObj = new RegExp('.*jquery.*');
  var scriptTags = document.getElementsByTagName("script");
  var jquery_flg = 0;
  
  for (var i=scriptTags.length-1; i>=0; i--){
   if( scriptTags[i].src.match(rObj) ) {
    jquery_flg = 1;
   }
  }
  
  // 定義されてなければjqueryをloadする
  if( !jquery_flg ) {
   // load jquery library
   var GM_JQ = document.createElement('SCRIPT');
   GM_JQ.src = 'http://ajax.googleapis.com/ajax/libs/jquery/1.4.1/jquery.min.js';
   GM_JQ.type= 'text/javascript';
   var head = document.getElementsByTagName('HEAD')[0];
   head.appendChild(GM_JQ);
  }
  
  // Check if jQuery's loaded
  function GM_wait() {
   if(typeof unsafeWindow.jQuery == 'undefined') { window.setTimeout(GM_wait,100); }
   else { $ = unsafeWindow.jQuery; letsJQuery(); }
  }
  GM_wait();
 }

})();