Jquery不会在文本框中显示webMethod返回的值

时间:2015-07-20 21:36:44

标签: c# jquery asp.net asynchronous webmethod

我正在尝试使用jquery显示webmethod返回的值,但它不起作用。 Web方法工作正常,并返回我甚至可以提醒并看到该值的值。但是当试图在同一页面上的文本框中显示该值时,它不起作用。我已经检查了很多在线解决方案但是徒劳无功。请帮忙。

注释的代码部分只是我尝试将值显示到文本框但却徒劳无功的不同方法。

<script type="text/javascript">

        function loadData(id) {
            PageMethods.loadDataToModal(id, onSucess, onError);

            function onSucess(result) {

                alert(result.firstname);
                //$('#firstname').input.setAttribute('value', result.firstname);
                //document.getElementById("txtfirstname").innerText = result.firstname;
                //$('#firstname').val( result.d.firstname);
                document.getElementById("txtLastname").innerText = result.lastname;
            }

            function onError(result) {
                alert('Something wrong.');
            }
        }
    </script>

2 个答案:

答案 0 :(得分:0)

您可以使用jQuery val方法设置文本框的内容:

$('#txtLastName').val(result.lastname);

例如:

&#13;
&#13;
$('#txtLastName').val("testing!!");
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<input type="text" id="txtLastName">
&#13;
&#13;
&#13;

答案 1 :(得分:0)

$('#firstname').val( result.d.firstname);

可能是最直接的方式和你想要的方式。

您需要做的是确认$(&#39;#firstname&#39;)返回您期望的DOM对象。 (IE:您的输入是否有id =&#34;名字和#34;并且您在网页上没有其他具有相同ID的内容。)

您确定result.d.firstname是否包含您需要的数据?您在result.firstname上发出警报。

.val()是用于设置输入值的正确jQuery方法。