我想对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
直到该方法到达调试器。我不能再走了。
答案 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);
});
}
}
});