4

問題は、フォームにラベルがあり、ボタンを押したときにこのラベルにアクセスしようとしているということです。私のフォームは次のようになります。

<form method = 'POST'>
<img src = 'ItemIcons/<?php echo $ItemPicture;?>.png' alt = '<?php echo $row["ItemDesc"];?>'/>
<label name = 'lblItemName'><?php echo $ItemName; ?></label> 
<br>
<label> <?php echo "Gold:" . $row["ItemPrice"]; ?> </label> 


<input type = 'submit' value = 'Buy <?php echo $ItemName; ?>' name = 'ItemPurchase'/>
</form>

ボタンを呼び出すための私のコードは次のようになります。

if(isset($_POST['ItemPurchase'])) {
    $ItemName = $_POST["lblItemName"];
    ?>
        <script>
            alert('<?php echo $ItemName;?>');
        </script>
    <?php
}

現在、空の値を警告します。ラベルではなくテキストボックスとして配置すると機能しますが、残念ながらラベルである必要があります。

4

5 に答える 5

10

ラベルはフォームで送信されないため、そのままでは機能しません。その下に、同じ値をエコーする非表示の入力フィールドを作成してみませんか? その後、 $_POST[''] が機能します。

<input type="hidden" name="lblItemName" value="<?php echo $ItemName; ?>">
于 2013-10-20T18:09:33.573 に答える
3

非常に簡単にできます。

alert($('label').html());
于 2013-10-20T18:13:57.023 に答える
2

コードを大幅に変更しなくても、ラベルと同じ値で初期化された非表示フィールドを使用して、必要なものを取得できます。

于 2013-10-20T18:08:56.030 に答える
0

情報が送信されないため、フォーム投稿からラベルの値を取得できません。できることは、ラベルの値を使用して非表示フィールドをフォームに追加することです

于 2013-10-20T18:10:00.267 に答える