0

ここで私がやりたいことは、if条件の値に基づいて、合計フォームを無効にする必要があります.どうすればそれを行うことができますか.

if ($today1 >= $saturday && $today1 <= $season1)
    {
     document.getElementById('season').disabled = false;
    }
    else if($today1 >= $startdate_offseasona1 && $today1 <= $enddate_offseasona1 )
    {
    document.getElementById('season').disabled = true;
    }
    else if($today1 >= $startdate_seasona2 && $today1 <= $season2)
    {
    document.getElementById(seasons).disabled = false;
    } 

そして私のフォームは次のようになります:

<form action="" method="POST" id="season" name="season">
Min_Custom_League_size<input type="text" name="min_custom_league_size" size="40"/><br/>
Max_Custom_League_size:<input type="text" name="max_custom_league_size" size="40"/><br/>
Ranked_League_size:<input type="text" name="ranked_league_size" size="40"/><br/>
Screen_Capacity:<input type="text" name="screen_capacity" size="40"/><br/>
Wide_Release_Screens:<input type="text" name="wide_release_screens" size="40"/><br/>
Limited_Release_Screens:<input type="text" name="limited_release_screens" size="40"/><br/>
Starting_Auction_Budget:<input type="text" name="starting_auction_budget" size="40"/><br/>
Weekly_Auction_Allowance:<input type="text" name="weekly_auction_allowance" size="40"/><br/>
Minimum_Auction_Bid:<input type="text" name="minimum_auction_bid" size="40"/><br/>
<input type="submit" value="submit" name="submit" />
</form>

if条件値に基づいてこれを行うにはどうすればよいですか...私のコードの何が問題なのですか??

4

2 に答える 2

1

PHP (サーバー側) と JavaScript (クライアント側) を混在させていますが、それはできません。いずれにせよ、<input>フォーム自体ではなく、要素を無効にする必要があります。

PHPのみでそれを行う方法は次のとおりです。

<?php
$disableForm = $today1 >= $startdate_offseasona1 && $today1 <= $enddate_offseasona1;
?>
<form action="" method="POST" id="season" name="season">
    Min_Custom_League_size<input type="text" <?php if($disableForm) echo 'disabled="disabled"'?> name="min_custom_league_size" size="40"/><br/>
<!-- repeat for all input elements -->
</form>

そして、無条件に入力を無効にする純粋な JavaScript の方法を次に示します。

<script>
window.onload = function() {
    var frm = document.getElementById('season');
    var inputs = frm.getElementsByTagName('input');
    for(var i=0; i<inputs.length; i++) {
        inputs[i].disabled = true;
    }
}
</script>

注: 最後のelse ifブロック内にもタイプミスがdisabledありますdiabled

于 2012-05-19T14:50:47.803 に答える
0

これを使用して、フォーム内のすべての要素を無効にします。同様に、フォーム要素を有効にすることができます

var theform = document.getElementById('seasons');
for (i = 0; i < theform.length; i++) {
var formElement = theform.elements[i];
if (true) {
formElement.disabled = true;
}
}
于 2012-05-19T14:59:35.000 に答える