VUE-axios Post无法正常工作

时间:2018-07-17 08:55:06

标签: vue.js vuejs2 axios

我想对VUE.JS进行ajax调用,这可以由axios完成。我正在从JS文件进行此调用,下面是代码,这是我到目前为止尝试过的。

    <div id="VueCalling">    
        <div class="container">
            <label>Please enter thought </label>
        <input type="text" id="txtThought" class="form-control textboxCustm" v-model="textThought" />
        </div>
        <input type="button" class="btn btn-info" id="btnInsert" value="Insert JS" v-on:click="greet" />
        <br />
        <br />

        <a href="ReadThought.aspx" class="btn btn-primary">Read all thoughts</a>
    </div>
</asp:Content>

这是我的HTML代码,现在下面提到的JS代码。

new Vue({
    el: '#VueCalling',
    data: function () {
        return {
            textThought: null,
            checkbox: null,
            text: null,
        }
    },
    methods: {
        greet: function (event) {
            // `this` inside methods points to the Vue instance
            var passedEmail = this.textThought;
            // `event` is the native DOM event
            axios.post('Default.aspx/InsertThoughtMethod?Thought="' + passedEmail + '"',
    {
        headers: {
            'Content-type': 'text/xml; charset=\"utf-8\"'
        },
    }, function (data) {
        alert(data);
    }).then(function (response) {
        console.log(response);
    }).catch(function (error) {
        console.log(error);
    });
        }
    }
});

这是方法背后的代码:

[WebMethod]
    public static bool InsertThoughtMethod(string Thought)
    {
        return true;
    }

我已经检查了控制台和网络日志。它给出了这个错误。 Network Log

直到该方法到达调试器。我不能再走了。

1 个答案:

答案 0 :(得分:1)

我处理了这段代码并找到了解决方案。下面的代码运行良好。我检查了。

new Vue({
el: '#VueCalling',
data: function () {
    return {
        textThought: null,
        checkbox: null,
        text: null,
    }
},
methods: {
    greet: function (event) {
        // `this` inside methods points to the Vue instance
        var passedEmail = this.textThought;

        // `event` is the native DOM event
        axios.post('Default.aspx/InsertThoughtMethod', { Thought : passedEmail }).then(function (response) {
    console.log(response);
}).catch(function (error) {
    console.log(error);
});
    }
}
});