亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

HTML 單選按鈕在數據庫中保存第一個單選按鈕值

HTML 單選按鈕在數據庫中保存第一個單選按鈕值

白板的微信 2024-01-11 16:35:12
我是 Javascript 和 ajax 的新手。我正在創建一個基本表單并將值保存在 Mysql 數據庫中。點擊提交按鈕后,只有第一個單選按鈕值被保存在數據庫中。誰能幫我嗎? 這是我的 HTML 代碼:<form>    <div class="form-group">        <div class="form-group">            <label>Email:</label>            <input type="email"  class="from-control" name="Name">        </div>        <label class="form-check-label">Gender</label>        <div class="form-check-inline">            <input type="radio" class="form-check-input" name="Sex" id="Sex" value="Male" />Male            <input type=radio class="form-check-input" name="Sex" id="Sex" value="Female" /> Female        </div>        <div class="form-group">            <button class="btn btn-primary" type="submit" id="btn_submit">Submit</button>            <button class="btn btn-seconday" type="button" id="btn_cancel">Cancel</button>        </div>    </div></form>我的 JavaScript 代碼:<script type="text/javascript">    $(document).ready(function () {        $('#btn_save').on('click',function() {            var Email = $('#Email').val();            var Sex = $('#Sex').val();            $.ajax({                type : "POST",                url : "https://localhost/newCrud/test/save",                dataType : "JSON",                data: {Email:Email, Sex:Sex},                success : function (data) {                    $('[name = "Email"]').val("");                    $('[name = "Sex"]').val("");                }            });            return true;        });    });</script>數據庫結構 保存表單提交的數據請幫助我解決我的問題,我做了相當多的研究,但找不到解決我的問題的方法。謝謝您的建議。
查看完整描述

4 回答

?
喵喵時光機

TA貢獻1846條經驗 獲得超7個贊

idHTML 的屬性應該是唯一的。在這種情況下,您將始終獲得相應的第一個值id。

解決您的問題的更簡單方法:

var Sex = $('input[name="Sex"]:checked').val();


查看完整回答
反對 回復 2024-01-11
?
幕布斯7119047

TA貢獻1794條經驗 獲得超8個贊

Id 必須始終是唯一的。當你這樣做時,var Sex = $('#Sex').val();你只會得到第一個結果,因為它首先出現在 DOM 中。有很多不同的方法,但是獲取值的簡單選擇就像......


注意:在我的示例中,已經檢查了女性。


function getRadioValue(name) {

  var inputs = Array.from(document.getElementsByName(name));

  checkedRadio = inputs.filter(x => x.checked);

  if (checkedRadio.length) {

    return checkedRadio[0].value

  }

}


console.log(getRadioValue("Sex"));

<div class="form-check-inline">

  <input type="radio" class="form-check-input" name="Sex" value="Male" />Male

  <input type=radio class="form-check-input" name="Sex" value="Female" checked /> Female

</div>


查看完整回答
反對 回復 2024-01-11
?
揚帆大魚

TA貢獻1799條經驗 獲得超9個贊

默認情況下,應選擇一個單選按鈕。



查看完整回答
反對 回復 2024-01-11
?
慕村225694

TA貢獻1880條經驗 獲得超4個贊

似乎是數據模型問題。

您正在從 html 中檢索名稱等于“性別”的值。您有兩個名稱等于“性別”的輸入。Jquery 將從 DOM 中選擇第一個名為“Sex”的輸入。因此,您總是將性別更新為名稱為“sex”的第一個輸入的值。

那是你的問題。

如果我們看到您要插入的數據庫實例的表是什么樣子,我們可以為您提供正確的解決方案。


查看完整回答
反對 回復 2024-01-11
  • 4 回答
  • 0 關注
  • 216 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號