javascript - 在文本框上传递值

标签 javascript asp.net-mvc

我正在使用 javascript 函数,当点击它时它会显示在模式上,我还有另一个函数来生成随机引用号。我的问题是,它没有显示在文本框上,它显示为空。

//我的表

<table id="ticketTable" class="display table table-hover table-striped">
    <thead>
        <tr>
            <th>Ticket Number</th>
            <th>Created By</th>
            <th>Date & Time Created</th>
            <th>Date & Time Occured</th>
            <th>Error Type</th>
            <th>Details</th>      
        </tr>
    </thead>
</table>

//我的工作 Javascript,如果点击,我在这里显示我的内容,我的输入文本框“ConvoRef”为空。

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-confirm/3.3.2/jquery-confirm.min.js"></script>
<script src="~/Scripts/jquery.dataTables.min.js"></script>
<script src="~/Scripts/dataTables.bootstrap4.min.js"></script>
<script>
    $(document).ready(function () {   
            loadData();

        function loadData(is_category) {
            var dataTable = $('#ticketTable').DataTable({
                "language": {
                    "emptyTable": "No Transaction"
                },
                ajax: {
                    url: "/Ticket/GetTicket/" + is_category,
                    dataType: "json",
                    retrieve: "true",
                    processing: "true",
                    serverSide: "true",
                    type: "POST",
                    dataSrc: "",
                    data: { is_category: is_category },

                },
                columnDefs: [
                    {
                        targets: [1],
                        orderable: false,
                    },
                ],

                columns: [
                    {
                        data: "TicketNumber",

                    },

                    {
                        data: "UserTicket"
                    },

                    {
                        data: "DateCreated",

                    },
                    {
                        data: "DateOccurence",

                    },
                    {
                        data: "ErrorType"
                    },
                    {
                        data: "TicketNumber",
                                      render: function (data, type, row, meta) {
                    return '<button type="button" class="btn btn-info viewdetails" id="' + data + '">View</button>';
                },

                    },

                ]

            });

            $(document).on('change', '#category', function () {
                var category = $(this).val();
                $('#ticketTable').DataTable().destroy();
                if (category != '') {
                    loadData(category);
                }
                else {
                    loadData();
                }
            });


            $(document).on('click', '.viewdetails', function () {
                var details_id = $(this).attr("id");
                var valueID = $(this).attr("id");

                console.log(details_id);
                $.ajax({
                    type: "POST",
                    dataType: "json",
                    url: "/Ticket/ConvoId/" + details_id,
                    contentType: "application/json;charset=utf-8",

                    success: function (data) {
                        dataTable.ajax.reload();
                        var jsonData = JSON.parse(data.data);

                        var html = '';     
                        html += '<hr>';
                        html += '<div class="card mb-2"><div class="card-body mb-2"><div class="row"><div class="col-md-12">';
                        html += '<h3><i class="far fa-envelope"></i>Message</h3>';
                        html += '<div style = "height: auto !important; max-height: 250px !important;; overflow: auto !important;" > ';
                        html += '</div></div>';
                        html += '</div></div></div><hr>';

                        html += '@using (Html.BeginForm("AddConvo", "Ticket", FormMethod.Post, new { enctype = "multipart/form-data" }))
                        {<form><div><div class="mb-2" style="background-color:#EEEEEE; padding:15px;">**My Text where i want to display my function makeid <input type="text" id="ConvoRef" name="ConvoRef">**<strong>Send Message:</strong> <textarea cols="100" rows="3" class="form-control mt-1 mb-1" name="ConvoDetails" id="ConvoDetails" placeholder="Add Response"></textarea></div><strong><text class="mt-5">Upload File:</text></strong><p class="text-danger font-italic"><strong>Note: Check the file before submit</strong></p><input type="file" name="FilePath" id="FilePath"  multiple class="form-control" /><div><input type="submit" class="btn btn-primary btn-sm mt-2 sendButton" type="submit" id="addMessage" value="Send"></div></div></form>}';


                        html += '</div></div></div>';
                        html += ' ';
                        $('#details_info').html(html);
                        $('#detailsModal').modal('show');

                    },

                    error: function () {
                        alert("content load failed.");
                    }
                });

            });
            document.getElementById("ConvoRef").value = makeid(7);

            function makeid(length) {
                var result = '';

                var characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
                var charactersLength = characters.length;
                for (var i = 0; i < length; i++) {
                    result += characters.charAt(Math.floor(Math.random() * charactersLength));
                }
                var TicketDate = new Date();
                var Tnumber = "T" + TicketDate.getFullYear() + TicketDate.getSeconds() + "-" + result;
                return Tnumber;
            }
        }

        });
</script>

最佳答案

您正在尝试在创建输入之前设置值。 移动 document.getElementById("ConvoRef").value = makeid(7);$('#details_info').html(html); 之后应该可以工作。

关于javascript - 在文本框上传递值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57719330/

相关文章:

javascript - java脚本不能自动写入硬盘但是Java可以这样做

asp.net-mvc - 在 asp.net-mvc 站点上优化 json 的最佳方法是什么

javascript - fnPageChange 无法立即工作? JS 顺序错误?

javascript - 由于 exif 数据,从 iPhone 上传的图像显示在侧面

asp.net-mvc - Razor _Layout.cshtml 来自特定 Controller 的公共(public)部分

c# - AuthorizeAttribute 适用于 MVC Controller 但不适用于 ApiController

asp.net-mvc - 从ASP.Net Webforms反模式毕业

asp.net-mvc - 可以在没有 Controller 的情况下返回 View 吗?

javascript - 3.1 中分发的 Javascript cometd 聊天客户端中有一行我不明白

javascript棋盘游戏棋子放置