0

各スタッフの作業進捗状況を追跡するためのフォームがあります。1人のスタッフが1日に多くのタスクを実行できるため。そのため、作業時間を節約するために、タスクのチェックボックスを作成して、一度に複数のレコードとして選択して保存できるようにしました。私のコードは以下の通りです

<td colspan="2">
        <%
          if rsPdtn_sizeColor.eof then 
             call displayNotFoundRecord
          Else
             Do Until  rsPdtn_sizeColor.Eof
        %>             
    <div style="width:120px; float:left"><input type="checkbox" name="pdtn_szcl_id" value="<%=rsPdtn_sizeColor.fields.item("pdtn_szcl_id")%>">&nbsp;<%=rsPdtn_sizeColor.fields.item("pdtn_st_size")%> &nbsp;&nbsp;<%=rsPdtn_sizeColor.fields.item("pdtn_st_color")%></div>
    <div style="width:50px; float:left"><input type="text" name="pdtn_qty" value="<%=rsPdtn_sizeColor.fields.item("pdtn_st_qty_est")%>" size="7"></div>
    </div>
    <div style="clear:both"></div>
        <%                                                                  
             rsPdtn_sizeColor.movenext
             Loop
           End if                   

        rsPdtn_sizeColor.movefirst                              
        %>

</td>
<td><input name="pdtn_note" value="<%=pdtn_note%>" size="39"></td>

ただし、このコードでは、チェックしたレコードセットのみを渡すことができるフィールド「pdtn_szcl_id」のみを使用します。「pdtn_qty」にも同じことをしてもらいたい。それで、これについて私を助けてくれませんか。ありがとうございました

4

1 に答える 1

1

問題は、重複した名前の入力のようなフォーム要素を持つべきではないということです。考えられる解決策はいくつかありますが、これがおそらく最も安全です。

コードで、データベースIDをチェックボックスと数量テキストボックスの名前に追加します。次のようになります。

<div style="width:120px; float:left"><input type="checkbox" name="pdtn_szcl_id_<%=rsPdtn_sizeColor.fields.item("pdtn_szcl_id")%>">&nbsp;<%=rsPdtn_sizeColor.fields.item("pdtn_st_size")%> &nbsp;&nbsp;<%=rsPdtn_sizeColor.fields.item("pdtn_st_color")%></div> 
<div style="width:50px; float:left"><input type="text" name="pdtn_qty_<%=rsPdtn_sizeColor.fields.item("pdtn_szcl_id")%>" value="<%=rsPdtn_sizeColor.fields.item("pdtn_st_qty_est")%>" size="7"></div> 

次に、値を取得する場合は、レコードセットを再度開き、行をループして、チェックボックスがオンになっているかどうかを確認し、次のように値を取得する必要があります。

<%
'Open your rsPdtn_sizeColor recordset again
Do Until rsPdtn_sizeColor.Eof
    If Request.Form("pdtn_szcl_id_" & rsPdtn_sizeColor.fields.item("pdtn_szcl_id")) = "on" Then
         'This checkbox was checked
         id = rsPdtn_sizeColor.fields.item("pdtn_szcl_id")
         qty = Request.Form("pdtn_qty_" & rsPdtn_sizeColor.fields.item("pdtn_szcl_id"))
         'This gives you the ID and Qty entered for each row
    End If
    rsPdtn_sizeColor.movenext
Loop
%>

NB。Request.Formを使用しましたが、フォームメソッドGETを使用する場合は、Request.QueryStringに変更する必要があります。

于 2012-09-18T22:41:06.020 に答える