【问题标题】:Ajax Call to WCF Service is not Updating对 WCF 服务的 Ajax 调用未更新
【发布时间】:2014-10-15 17:29:57
【问题描述】:

我有一个测试按钮,当我按下它时可以调用 WCF 服务。这是我的代码:

<input type="button" id="testbutton"/>
<script>
         function jqueryTest() {
                var text = document.getElementById('test').innerHTML;
                $.ajax({
                    type: "GET",
                    url: "wcfServiceCall",                  
                    dataType: "json",                   
                    success: function(data) {
                        alert(data[0].output);                          
                    },                      
                });
         }

       $("#testbutton").kendoButton({
               click: jqueryTest
       });
</script>

我的 WCF 服务将返回一个自定义对象,例如:

[{"output":0.97,"name":"John Doe"}]

所以,当我第一次按下按钮时,我会看到一个值为 0.97 的警报框。这是对的。但是,假设我进入我的 WCF 服务并将输出更改为 0.12。当我再次按下按钮时,我仍然看到 0.97 的值,但它应该是 0.12(如果我从浏览器调用我的 Web 服务,我会看到正确的值)。那么,我到底做错了什么?我认为单击该按钮每次都会查询 Web 服务,但似乎并非如此,因为该值未刷新。任何帮助将不胜感激。

【问题讨论】:

    标签: jquery html ajax web-services wcf


    【解决方案1】:

    您是否尝试过强制 ajax 调用不使用缓存?

    $.ajax({
                    type: "GET",
                    url: "wcfServiceCall",   
                    cache:false,
                    dataType: "json",                   
                    success: function(data) {
                        alert(data[0].output);                          
                    },                      
                });
    

    【讨论】:

    • 做到了。我的愚蠢错误。那么,我是否必须在来自 ajax 的每个 wcf 服务调用上将缓存设置为 false?
    • 你不想缓存的每一个调用。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-05
    • 1970-01-01
    相关资源
    最近更新 更多