自動入力JavaScriptを育成
入力済FROMから自動入力JavaScriptを育成
<!--chromeThing:入力済FROMから自動入力JavaScriptを育成 - name属性が無いと取得できません!-->
javascript:
function SetInput(_name,_value){
return '_form[\'' + _name + '\'].value=\''+ _value +'\';'
}
var formIndex=0;
var ar = new Array();
var _form=document.getElementsByTagName('form')[formIndex];
var radioIndex =0;
var radioName='-';
var checkboxIndex =0;
var checkboxName='-';
var _select=_form.getElementsByTagName('select');
max =_select.length;
for (var i = 0 ; i < max ; i++){
var e=_select[i];
ar.push(SetInput(e.name,e.value));
}
var _textarea=_form.getElementsByTagName('textarea');
var max =_textarea.length;
for (var i = 0 ; i < max ; i++){
var e=_textarea[i];
var str=e.value;
str=str.replace(/(\n|\r)/g,'\\n');
ar.push(SetInput(e.name,str));
}
var _click='';
var _input=_form.getElementsByTagName("input");
var max =_input.length;
for (var i = 0 ; i < max ; i++){
var e=_input[i];
if(e.type=='text'||e.type=='password'){
ar.push(SetInput(e.name,e.value));
}
if(e.type=='radio'){
if(radioName==e.name){
radioIndex =radioIndex+1;
}else{
radioIndex =0;
}
if(e.checked){
ar.push( '_form[\''+ e.name + '\']['+ radioIndex +'].checked=true;' );
}
radioName=e.name;
}
if(e.type=='checkbox'){
if(checkboxName==e.name){
checkboxIndex =checkboxIndex+1;
}else{
checkboxIndex =0;
}
var jsc='_form[\''+ e.name + '\']['+ checkboxIndex +'].checked=';
if(_form[e.name].length==undefined){
jsc='_form[\''+ e.name + '\'].checked=';
}
if(e.checked){
ar.push( jsc+'true;' );
}else{
ar.push( jsc+'false;' );
}
checkboxName=e.name;
}
if(e.type=='submit'){
_click='_form[\''+ e.name + '\'].click();';
}
}
if(_click!=''){
ar.push('/*'+_click+'*/');
}
function disp(js,max){
var rem_div = document.getElementById('_result_div');
if(rem_div){rem_div.parentNode.removeChild(rem_div);}
var _div = document.createElement( 'div' );
_div .setAttribute( 'id' , '_result_div' );
var Dd = document.body.appendChild( _div );
var _textarea = document.createElement( 'textarea' );
_textarea.setAttribute( 'id' , '_result_ta' );
_textarea.setAttribute( 'cols' , 100 );
_textarea.setAttribute( 'rows' , max+3 );
var Ta = Dd.appendChild( _textarea );
Ta.value=js;
}
function j(){
var js='javascript:function do_input(){\nvar _form=document.getElementsByTagName(\'form\')[' + formIndex + '];\n';
max=ar.length;
for (var i = 0 ; i < max ; i++){
js=js+ar[i]+'\n';
}
js=js+'}do_input();';
var er=document.getElementsByTagName('TITLE')[0].text=js+'//';
disp(js,max);
window.scroll(0,document.body.scrollHeight);
}
j();