Javascript的onClick函数不工作
我建立了一些小的mvc asp.net项目来检查OutBrain API的一些功能。Javascript的onClick函数不工作
我做了一个输入类型的文本,得到MarketerI ID并应该返回他的名字(从服务器)。但是当我按下按钮什么都没有发生,我真的不知道为什么,并很乐意得到一些帮助!
感谢
我的代码:
outBrain.js文件
$("#buttonB").on('click', function() {
getMarketer();
});
function getMarketer() {
$.ajax({
url: "/home/GetOutBrainMarketers",
data: { id: $("marketerID").val() },
success: function (result) {
var marketer = JSON.parse(result);
document.getElementById("nameMarketer").innerHTML = (marketer.name);
}
});
}
CSHTML文件(包括脚本文件路径):
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script src="~/Scripts/outBrain.js"></script>
@{
ViewBag.Title = "Home Page";
}
<br />
<div class="details">
<label>Enter Marketer ID</label>
<input type="text" class="form-control" id="marketerID">
<input type="button" class="btn btn-default" value="OK" id="buttonB" />
<section class="details">
<div class="name">
<label>Name</label>
<label id="nameMarketer"></label>
</div>
</section>
</div>
也有代码的控制器,但没有看到一个点来添加它。
尝试:
$("#buttonB").click(function() {
getMarketer();
});
虽然这可能是一个有效的答案,但通过解释代码的作用和工作原理,您更有可能帮助他人。仅有代码的答案往往会得到较少的积极关注,并没有其他答案那么有用。 – Aurora0001
这是一些有用的建议,谢谢。 – Bushido
您在阿贾克斯的选择缺少#
。 这是$("marketerID").val()
,应该是$("#marketerID").val();
难道这是问题吗?
改变此密码
$.ajax({
url: "/home/GetOutBrainMarketers",
data: { id: $("marketerID").val() },
success: function (result) {
var marketer = JSON.parse(result);
document.getElementById("nameMarketer").innerHTML = (marketer.name);
}
});
本:
$.ajax({
url: "/home/GetOutBrainMarketers",
data: { id: $("marketerID").val() },
success: function (result) {
var marketer = JSON.parse(result);
$("#nameMarketer").html(marketer.name);
}
});
和好运
I think, you have to put the your js files at the end, so it wwil be like this:
@{
ViewBag.Title = "Home Page";
}
<br />
<div class="details">
<label>Enter Marketer ID</label>
<input type="text" class="form-control" id="marketerID">
<input type="button" class="btn btn-default" value="OK" id="buttonB" />
<section class="details">
<div class="name">
<label>Name</label>
<label id="nameMarketer"></label>
</div>
</section>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script src="~/Scripts/outBrain.js"></script>
我建议你使用@section,这样你的代码会更加整齐。
对我来说似乎很好? https://jsfiddle.net/mqLtw4s0/ – Liam
你有没有[调试](http://stackoverflow.com/questions/988363/how-can-i-debug-my-javascript-code)呢? – Liam
@Liam是的,他的确如此。尝试将点击事件放置在匿名函数中。 – bilpor