代码之家  ›  专栏  ›  技术社区  ›  user3580480

传递给WebService的HTML值显示为空

  •  -1
  • user3580480  · 技术社区  · 4 年前

    我试图从我的网页中获取一个HTML值,并将其用作查询中的附加变量。

            <div style="margin-left:0px">
                <label>Enter Number here: </label><br>
                <input type= text id="demo">
            </div>
    

    …这是我的网络服务呼叫。

        //Generate code
        function Generate() {
    
            var myGrid = $('#jqquotes'),
                selectedRowId = myGrid.jqGrid('getGridParam', 'selrow');
                docid = myGrid.jqGrid('getCell', selectedRowId, 'docid');
    
    
            document.getElementById("demo").innerHTML = document.getElementById("demo").value;
    
            alert(document.getElementById("demo").value);
    
            var quotenum = document.getElementById("demo".value);
    
    
            if (confirm('Are you sure you want to generate a quote?')) {
                $.ajax({
                    url: '/WebService1.asmx/Generate',
                    dataType: "json",
                    contentType: "application/json; charset=utf-8",
                    type: "GET",
                    data: { docid: docid, quotenum: JSON.stringify(quotenum) }, 
                    success: function () {
    
                        //Get selected
                        var grid = $("#jqquotes");
                        var rowKey = grid.jqGrid('getGridParam', "selrow");
    
                        //Refresh grid
                        $('#jqquotes').trigger('reloadGrid');
    
                        //Set Selected
                        setTimeout(function () {
                            jQuery('#jqquotes').jqGrid('setSelection', rowKey);
                        }, 200);
    
    
                    }
                });
    
            } else {
                return false
            }
        }
    

    但是WebService失败了,说值为NULL,JSON响应为:

    …并且GET URL将值显示为NULL

    https://localhost:44338/WebService1.asmx/Generate?docid=10146"enum=null

    1 回复  |  直到 4 年前
        1
  •  1
  •   m1ke    4 年前

    我认为问题在于:

    var quotenum = document.getElementById("demo".value);
    

    这应该是

    var quotenum = document.getElementById("demo").value;