iT邦幫忙

0

如何抓取radiobutton的value後 進行資料編輯&修改

不明 2022-10-12 19:46:28728 瀏覽
  • 分享至 

  • xImage

我已經將資料都打進SQL裡
然後用datatable呈現在view上
我現在在row的最前面加上radiobutton
我的value能抓到id(代碼)
我現在想知道怎麼樣把id丟入編輯和刪除的標籤內進入頁面
用id撈出DB內對應的資料進行編輯和修改
(也就是說點選了radiobutton後,按下編輯鍵,進入畫面編輯原本的資料)
下面是我的JS

 function SerchallData(selectedCity) {
            var selectedCity = $('#CITY option:selected').val();
            var selectedValue = $('#AREA option:selected').val();
            if ($.trim(selectedValue).length > 0) {
                $.ajax({
                    url: '@Url.Action("GetMmap", "Getarea")',
                    data: { cityName: selectedCity, areaName: selectedValue },
                    type: 'POST',
                    dataType: 'json',
                    success: function (data) {

                        $('#MAP>tbody').empty();
                        for (var i = 0; i < data.length; i++) {
                            var row = $('<tr><td><input type="radio" name="data" value="' + data[i].代碼 +'"></td><td>' + data[i].代碼 + '</td><td>' + data[i].名稱 + '</td><td>' + data[i].地址 + '</td><td>' +  data[i].電話 + '</td><td>'+</td></tr>'); 
                            $('#MAP>tbody').append(row);

                        }
                        $('#MAP').show();//到此是兩個下拉選單後按查詢可以過濾出資料
                        $('input[type=radio][name="data"]').on('change', function () { Radiobutton(); })
                    }, //點選radiobutton後可以抓出ID(也就是代碼)
                    error: function (jqXHR, textStatus, errorThrown) {
                        alert('Error: ' + textStatus + ' - ' + errorThrown);
                    }
                });

            }
        }
        function Radiobutton() {
           
            var result = "";
            var id = $('input[name=data]:checked').val();
            console.log("id:" + id);
            $("input[name=data][value='" + id + "']").attr('checked', "checked");
            $("input[name=data]:checked").each(function () {
                result = $(this).val();
            });
        }

我的HTML

<div>
    <a href="@Url.Action("CreateData","Getarea")">新增</a>
    //我想將抓取到的ID放入這個<a>,點擊後可進入編修頁,"Getarea"是controller的名稱
    <a href="@Url.Action("Edit", "Getarea",new { @id = //這裡?})">編輯</a>

</div>

<table id="MAP" class="table table-bordered table-hover" style="display:none;">
    <thead>
        <tr>
            <th></th> //這是給radiobutton的
            <th>代碼</th>
            <th>名稱</th>
            <th>地址</th>
            <th>電話</th>
           
        </tr>
    </thead>
    <tbody></tbody>
</table>

我的controller:

 public ActionResult Edit(string id)
        {
            Inserch inserch = new Inserch();
            DataTable datatable = new DataTable();
            using (SqlConnection con = new SqlConnection(connstr))
            {
                con.Open();
                string q = "SELECT * FROM Pharmacy where 代碼=" + id;
                SqlDataAdapter da = new SqlDataAdapter(q, con);
                da.Fill(datatable);
            }
            if (datatable.Rows.Count == 1)
            { 
                inserch.代碼 = datatable.Rows[0][0].ToString();
                inserch.名稱 = datatable.Rows[0][1].ToString();
                inserch.地址 = datatable.Rows[0][2].ToString();
                inserch.電話 = datatable.Rows[0][3].ToString();
               return View(inserch);
             }
              return RedirectToAction("Index");


        }
        [HttpPost]
        public ActionResult Edit(string id, FormCollection collection)
        {
            var b = new GetCollection();
            try
            {
                return RedirectToAction("Index");
            }
            catch
            {
                return View();
            }

        }

我想編輯跟刪除應該是一樣的功能
所以我的code就只放編輯了
再麻煩各位大大幫忙了

圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 個回答

0
Coding小僧
iT邦新手 3 級 ‧ 2022-10-12 22:38:10

如果用form表單提交是否比較容易一點?
類似下面這樣

<form method="get" action="~/Getarea/Edit">
    <div class="container">
        <div class="form-group">
            <input type="radio" value="1" id="A" name="id" checked />
            <label for="A">A</label>
        </div>
        <div class="form-group">
            <input type="radio" value="2" id="B" name="id" />
            <label for="B">B</label>
        </div>
        <div class="form-group">
            <input type="radio" value="3" id="C" name="id" />
            <label for="C">C</label>
        </div>
        <div class="form-group">
            <input type="radio" value="4" id="D" name="id" />
            <label for="D">D</label>
        </div>
        <div class="form-group">
            <input type="submit" value="編輯" class="btn btn-primary" />
        </div>
    </div>
</form>
不明 檢舉

我後來在js有把 name設為id
然後改為用form表單提交
有成功了
感謝小僧:)

Good~

我要發表回答

立即登入回答