uspTukubaiコマンドに関する様々な資料がここにあります。

 

 

魂内検索

DOCUMENTS

COMMAND

FORUM

UEC DOCS

VIDEO

 

ABC順リスト |  カテゴリ別リスト

(動画教材準備中)

formgatame

<概要>

formgatame : HTML ファイルのフォームを固める(読み取り専用にする)

<書式>

Usage   : formgatame <html>
          formgatame <html> <data>
Option  : --form <formname>
          --class <classname>
          --except <name>
          --except-file <file>
Version : Mon Jun 20 15:12:29 JST 2016
Edition : 2

<説明>

<html> ファイルの各種 input タグ (button checkbox file image radio
reset submit text)、textarea タグ、select タグ、option タグに属性を
挿入すること で読み取り専用にします。各タグに挿入する属性は次の通り。
class="readonly" のクラス名は --class オプションで変更できます。

input type="button"   -> disabled="disabled"
input type="file"     -> disabled="disabled"
input type="image"    -> disabled="disabled"
input type="reset"    -> disabled="disabled"
input type="submit"   -> disabled="disabled"
input type="checkbox" -> class="readonly" disabled="disabled"
input type="radio"    -> class="readonly" disabled="disabled"
input type="text"     -> readonly="readonly" class="readonly"
                         tabindex="-1"
textarea              -> readonly="readonly" class="readonly"
                         tabindex="-1"
select                -> readonly="readonly" class="readonly"
                         tabindex="-1"
option                -> disabled="disabled"

input type="radio"、input type="checkbox" タグは、checked="checked"
属性が付いている時、<input type="hidden" name="name" value="..."/>
形式のタグを直後に追加します。
option タグに selected="selected" 属性が付いている時、disabled 属性
は挿入されません。


<例1>

全タグを readonly にする
$ cat html
<html><body>
<form name="form1">
<input type="button" name="name_button"/>
<input type="file" name="name_button"/>
<input type="image" name="name_image" />
<input type="reset" name="name_reset"/>
<input type="submit" name="name_submit"/>
<input type="text" name="name_text" class="abc" value="X"/>
<input type="radio" name="name_radio" value="a"/>
<input type="radio" name="name_radio" value="b" checked="checked"/>
<input type="radio" name="name_radio" value="c"/>
<input type="checkbox" name="name_checkbox" onclick="alert('linux!')"
value="z" checked="checked"/>
<textarea name="name_textarea">
usp
laboratoy
</textarea>
<select name="pulldown1">
<option value="pd1">pd1</option>
<option value="pd2" selected="selected">pd2</option>
<option value="pd3">pd3</option>
</select>
</form>
</body></html>

$ formgatame html
<html><body>
<form name="form1">
<input type="button" name="name_button" disabled="disabled"/>
<input type="file" name="name_button" disabled="disabled"/>
<input type="image" name="name_image" disabled="disabled"/>
<input type="reset" name="name_reset" disabled="disabled"/>
<input type="submit" name="name_submit" disabled="disabled"/>
<input type="text" name="name_text" value="X" readonly="readonly"
class="readonly abc" tabindex="-1"/>
<input type="radio" name="name_radio" class="readonly" value="a"
disabled="disabled"/>
<input type="radio" name="name_radio" class="readonly" value="b"
checked="checked" disabled="disabled"/><input type="hidden"
name="name_radio" value="b"/>
<input type="radio" name="name_radio" class="readonly" value="c"
disabled="disabled"/>
<input type="checkbox" name="name_checkbox" onclick="alert('linux!')"
class="readonly" value="z" checked="checked"
disabled="disabled"/><input type="hidden" name="name_checkbox"
value="z"/>
<textarea name="name_textarea" readonly="readonly" class="readonly"
tabindex="-1">
usp
laboratoy
</textarea>
<select name="pulldown1" readonly="readonly" class="readonly"
tabindex="-1">
<option value="pd1" disabled="disabled">pd1</option>
<option value="pd2" selected="selected">pd2</option>
<option value="pd3" disabled="disabled">pd3</option>
</select>
</form>
</body></html>

<例2>

指定タグのみ readonly にする
$ cat tag
name_text
name_tag

$ formgatame html tag
<html><body>
<form name="form1">
<input type="button" name="name_button"/>
<input type="file" name="name_button"/>
<input type="image" name="name_image" />
<input type="reset" name="name_reset"/>
<input type="submit" name="name_submit"/>
<input type="text" name="name_text" value="X" readonly="readonly"
class="readonly abc" tabindex="-1"/>
<input type="radio" name="name_radio" value="a"/>
<input type="radio" name="name_radio" value="b" checked="checked"/>
<input type="radio" name="name_radio" value="c"/>
<input type="checkbox" name="name_checkbox" onclick="alert('linux!')"
value="z" checked="checked"/>
<textarea name="name_textarea">
usp
laboratoy
</textarea>
<select name="pulldown1">
<option value="pd1">pd1</option>
<option value="pd2" selected="selected">pd2</option>
<option value="pd3">pd3</option>
</select>
</form>
</body></html>

<例3>

指定タグを除いて readonly にする
$ formgatame --except name_submit
<html><body>
<form name="form1">
<input type="button" name="name_button" disabled="disabled"/>
<input type="file" name="name_button" disabled="disabled"/>
<input type="image" name="name_image" disabled="disabled"/>
<input type="reset" name="name_reset" disabled="disabled"/>
<input type="submit" name="name_submit"/>
<input type="text" name="name_text" value="X" readonly="readonly"
class="readonly abc" tabindex="-1"/>
<input type="radio" name="name_radio" class="readonly" value="a"
disabled="disabled"/>
<input type="radio" name="name_radio" class="readonly" value="b"
checked="checked" disabled="disabled"/><input type="hidden"
name="name_radio" value="b"/>
<input type="radio" name="name_radio" class="readonly" value="c"
disabled="disabled"/>
<input type="checkbox" name="name_checkbox" onclick="alert('linux!')"
class="readonly" value="z" checked="checked"
disabled="disabled"/><input type="hidden" name="name_checkbox"
value="z"/>
<textarea name="name_textarea" readonly="readonly" class="readonly"
tabindex="-1">
usp
laboratoy
</textarea>
<select name="pulldown1" readonly="readonly" class="readonly"
tabindex="-1">
<option value="pd1" disabled="disabled">pd1</option>
<option value="pd2" selected="selected">pd2</option>
<option value="pd3" disabled="disabled">pd3</option>
</select>
</form>
</body></html>

--except name は --except name1 --except name2 ... と複数記述できます。

<例4>

--except-file オプションは、ファイル  <file> の中に記述されているタ
グ名を除いて readonly にします。指定ファイルの形式は特になく、レコー
ドおよびフィールドに記述されている値がタグ名として指定されているとみ
なします。

$ cat except_name                              # 横型
submit cancel modoru
$ cat except_name                              # 縦型
submit
cancel
modoru
$ formgatame --except-file except_name html

これは、次の記述と同じです。
$ formgatame --except submit --except cancel --except modoru html


<備考>

1. class 属性が既存の場合、 class="readonly 既存クラス" と置換します。
   tabindex 属性が既存の場合、tabindex="-1" と上書きします。
   disabled 属性が既存の場合、disabled="disabled" と上書きします。

2. <data> ファイルは第1フィールドが readonly にする名前と解釈され、
   第2フィールド以降は無視されます。

3. <html> は正しい html として記述されている必要があります。例えば、
   タグはすべて小文字であり、<タグ  /> あるいは、<タグ> </タグ> と
   記述される必要があります。