-1

サイトに複数の送信ボタンがあります。以前は要素を上下に移動していましたが、ユーザーが他の値を変更している間にすべてが保存される場合に備えて、それらを 1 つのフォーム全体にしたいと考えています。問題は、クリックされたボタンの要素 ID が必要なことです。

したがって、ループ内のコードは次のとおりです。

div class="form-order"><?php echo $elements[$z]['element_order']; ?> </div>
<input type="submit" name="edit_form_operation" value="&#9650;" class="button-primary" 
<?php if($elements[$z]['element_order'] == 1) echo 'disabled="disabled"'; ?> /><br />

<input type="submit" name="edit_form_operation" value="&#9660;" class="button-primary" 
<?php 
$highest_element = $fdb->get_element_highest_order($form[$i]['form_id']);
if($elements[$z]['element_order'] == $highest_element) echo 'disabled="disabled"'; ?> />

そして、for ループ内の特定のボタンの onclick は、最初にこのコードを記述して、どの要素を移動する必要があるかを知る必要があります。

echo '<input type="hidden" name="change_element_id" value="'.$elements[$z]['element_id'].'" >';

また、この問題の別の解決策も用意しています。

4

1 に答える 1

0

わかりました私は今それをそのように解決しました

ここで入力を処理します。

// Select Operation
    if(isset($_POST['edit_form_operation_up'])) {
        echo "move up id ";
        $operation = array_keys($_POST['edit_form_operation_up']);
        echo $operation['0'];
    }
    else if(isset($_POST['edit_form_operation_down'])) {
         echo "move down id ";
         $operation = array_keys($_POST['edit_form_operation_down']);
         echo $operation['0'];
    }

そして、これは、同じ値と名前の入力である無限要素の for ループにあります。

<?php $elements = $fdb->get_elements($form[$i]['form_id']); 
for($z = 0; $z < sizeof($elements); $z++) {
?>
<tr>
    <td><div class="form-order"><?php echo $elements[$z]['element_order']; ?> </div>
        <input type="submit" name="edit_form_operation_up[<?php echo $elements[$z]['element_id']; ?>]" value="&#9650;" class="button-primary" 
        <?php if($elements[$z]['element_order'] == 1) echo 'disabled="disabled"'; ?> /><br />
        <input type="submit" name="edit_form_operation_down[<?php echo $elements[$z]['element_id']; ?>]" value="&#9660;" class="button-primary" 
        <?php 
        $highest_element = $fdb->get_element_highest_order($form[$i]['form_id']);
        if($elements[$z]['element_order'] == $highest_element) echo 'disabled="disabled"'; ?> />
    </td>
    <td><?php echo $elements[$z]['element_id']; ?> </td>
    <td></td>
    <td></td>
</tr>
<?php } ?>

誰かがこのトピックを見つけて、良い解決策を見つけたい場合。

ご挨拶

于 2012-08-26T13:28:32.367 に答える