如何在MySQL中將具有相同名稱但不同ID的兩個欄位合併到同一行中?
P粉087951442
P粉087951442 2024-04-04 12:13:47
0
1
385

我有一個項目,客戶可以根據複選框選擇價格,輸入框的名稱相同, 如果我選擇複選框但沒有輸入內容,我只想將複選框的值儲存在資料庫中,如果我選擇了輸入框並且只想儲存輸入框的值。 這是我的程式碼:

<ul class="donate-now">[enter image description here](https://i.stack.imgur.com/EyU7O.png)
                  <li>
                    <input type="radio" class="form-control btn-default target" id="a100" name="amount" value="100"/>
                    <label for="a25">100€/mois</label>
                  </li>
                  <li>
                    <input type="radio" class="form-control btn-default target" id="a200" name="amount" value="200" />
                    <label for="a50">200€/mois</label>
                  </li>
                  <li>
                    <input type="radio" class="form-control btn-default target" id="a300" name="amount" value="300" checked/>
                    <label for="a75">300€/mois</label>
                  </li>
                 
                </ul>
                </div>
              
            
                
                <div class="container form-control-lg" id="montant-libre">
                  <span class="input-symbol-euro"><input type="text" class="form-control form-control-md" style="color: #d34607;" id="montantlibre" onclick="clearRadio()"  placeholder="Montant libre" name="amount" min="1"/></span>
                  
                </div>

我是否需要在我的mysql上做一些更改,因為我總是遇到錯誤?

P粉087951442
P粉087951442

全部回覆(1)
P粉419164700
<form id="donate">
   <ul class="donate-now">
      <li>
         <input type="radio" class="form-control btn-default target" id="a100" name="amount" value="100"/>
         <label for="a25">100€/mois</label>
      </li>
      <li>
         <input type="radio" class="form-control btn-default target" id="a200" name="amount" value="200" />
         <label for="a50">200€/mois</label>
      </li>
      <li>
         <input type="radio" class="form-control btn-default target" id="a300" name="amount" value="300" checked/>
         <label for="a75">300€/mois</label>
      </li>
   </ul>
   <div class="container form-control-lg" id="montant-libre">
      <span class="input-symbol-euro">
      <input type="text" class="form-control form-control-md" style="color: #d34607;" id="montantlibre" onclick="clearRadio()"  placeholder="Montant libre" name="amount" min="1"/>
      </span>
   </div>
</form>
<script>
   // 获取表单元素
   var form = document.getElementById("donate");
   if (form) {
   // 为表单添加提交事件监听器
   form.addEventListener("submit", function(event) {
     // 获取选中的单选按钮
     var selectedRadio = document.querySelector('input[name="amount"]:checked');
   
     // 获取输入字段
     var inputField = document.getElementById("montantlibre");
     var amount = selectedRadio.value;
     // 检查输入字段是否有值
     if (!Number(inputField.value) !== true) {
       // 新值
        amount = inputField.value;
     }
   
     console.log(amount);
     // 阻止默认的表单提交
     event.preventDefault();
   });
   }
</script>

詳情:

1-使用document.getElementById("donate")取得表單元素。

2-使用form.addEventListener("submit", function(event) { ... });為表單新增提交事件監聽器。

3-在事件監聽器函數內部,使用document.querySelector('input[name="amount"]:checked')取得選取的單選按鈕。

4-使用document.getElementById("montantlibre")取得輸入欄位。

5-使用if (!Number(inputField.value) !== true) { ... }檢查輸入欄位是否有值。

6-如果輸入欄位有值,則將該值儲存在amount變數中。否則,將選取的單選按鈕的值儲存在amount變數中。

7-使用event.preventDefault()阻止預設的表單提交。

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板