2

フォームを開発しています。そのフォームにチェックボックスがあります。チェックボックスをオンにすると、チェックボックスの前の入力フィールドが不透明なdivの後ろに隠れなければならないため、ユーザーはそれを入力できなくなります。しかし、z-indexを使用すると、TD要素の高さが変わります。

コード:

<table class="prijzen">
<tr>
<td Verhuurperiode</td>
<td>Prijs</td>
<td>Geen verhuur</td>
</tr>
<tr>
<td class="periode_naam" style="padding-bottom:2px;">Maand:</td>
 <td class="periode_prijs"><input type="Text" name="standaard_prijs_maand" maxlength="7"     
size="5" class="input_prijzen"></td>
<td class="geen_verhuur"><div id="verbergen_prijsvak"></div><div style="float:left;"><input    
type="Checkbox"></div><div class="align_checkbox">&nbsp;Huren per maand is niet   
mogelijk</div></td>
</tr>
</table>

CSS:

.input_prijzen{
    height:17px;
    font-size:10px;
    position:relative;
    left:0px;
    top:0px;
    z-index:100;
}
#verbergen_prijsvak{
    position:relative;
    left:0px;top:0px;
    z-index:1;
    background-color:red;
    filter:alpha(opacity=25);
    opacity:0.25;
    width:100px;
    height:20px;
}
4

2 に答える 2

3

やろうとしていることを行うのは良い習慣ではありません。代わりに、textboxifを無効にし、checkboxisのcheckedときに有効にしてcheckboxみてくださいunchecked

あなたはこのようなことをすることができます

$('input[type=checkbox]').on("click",function(){
if($(this).attr("checked"))
$('#txtbox').attr("disabled","disabled");
else
$('#txtbox').removeAttr("disabled");
});

作業デモを参照してください。

于 2012-08-25T08:23:42.567 に答える
0

ユーザーがテキストを入力できないようにするために、別のdivの背後にあるテキスト入力フィールドを「非表示」にすることはベストプラクティスではありません。この効果を実現する最良の方法は、javascriptを使用してテキスト入力を無効に設定することです。

これがデモです-http://jsfiddle.net/nsuvx/1/

于 2012-08-25T08:08:43.870 に答える