首页 > 解决方案 > 从 ViewData 填充剃刀文本输入

问题描述

我试图在模式中预先填充输入文本框。目前,我单击调用 jQuery 函数的编辑按钮,该函数进行 ajax 调用

<script>
    $(document).ready(function(){
        $(".selectRow").click(function(e)
        {
            e.preventDefault();
            var row = $(this).closest("tr"),      
                tds = row.find("td:nth-child(1)").first();

            var textval = tds.text();

            $.ajax({
                    url: "EditApplication?handler=GetRowInfo",
                    type: "POST",
                    dataType: "json",
                    data: { textval },
                    beforeSend: function (xhr) {
                        xhr.setRequestHeader("XSRF-TOKEN",
                            $('input:hidden[name="__RequestVerificationToken"]').val());
                    },
                    success: function () {
                        alert("success");
                    },
                    complete: function () {
                        $('#editAppModal').modal('show');
                    },
                    failure: function () {
                        alert("failure");
                    }
                })
        });
    });
</script>

完成后我显示模态。这个 jQuery 函数调用后面的代码中的一个方法,该方法GetRowInfo从表格中获取一个单元格。

GetRowInfo

        public void OnPostGetRowInfo(string textval)
        {
            Console.WriteLine("-----------------"+textval);

            DutyWeb dutyWebManager = new DutyWeb();

            textval = textval.Trim();

            Console.WriteLine("-----------------NEW-"+textval);
            selectedRow = dutyWebManager.SearchByApplication(textval);

            ViewData["appName"] = textval;

        }

我将发送到 ViewData 的文本值分配为 appName

然后我将文本框输入值分配为 ViewData["appName"

<div class="modal-body">
          <input type="text" name="appName" id="appName" value='@ViewData["appName"]'>
          <input type="text" name="appShortName" style="width:15%">
          <br>
      </div>

我不知道我是否做错了,但对我来说似乎是对的。模态在表单元素内部。逐步显示 ViewData 确实存储了正确的值,但它没有显示在文本框中

我想避免使用 jQuery 来做到这一点。我觉得 ViewData 是完成相同任务的一种更简单的方法

标签: javascriptc#jqueryrazormvvm

解决方案


推荐阅读