我正在尝试用变量替换我的DOM。但是当我的ajax运行时,它没有将新值赋给变量。
知道为什么变量值没有被替换?我在编写DOM Id时工作,如下所示,但是当我用变量替换它时。
这是我的代码浓缩工作
$(document).ready(){
var url = '/Home/GetBookingsTicker';
$('#button').on('click',function(){
$.ajax({
url: url,
cache: false,
type:"GET",
success: function (response) {
$('#marqueeTop').replaceWith(response);
setColors($('#one').val());
},
failure: function () {
alert("Failed to update!")
}
});
}
}
无效的代码
$(document).ready(){
var url = '/Home/GetBookingsTicker';
var $one = $('#one');
$('#button').on('click',function(){
$.ajax({
url: url,
cache: false,
type:"GET",
success: function (response) {
$('#marqueeTop').replaceWith(response);
setColors($one.val());
},
failure: function () {
alert("Failed to update!")
}
});
}
}
Razor
<div id="marqueeTop">
@Html.HiddenFor(m => m.one)
<span>
@foreach(var item in Model.procBookings){
<label class="setTopColors">
@Html.DisplayFor(x => item.GroupName)
@Html.DisplayFor(x => item.Sales).....
</label>
}
</span>
</div>
答案 0 :(得分:0)
第二个块功能无法访问变量$ 1。您可能需要阅读异步AJAX请求的工作原理。要访问$ 1,您需要成功实现回调。
答案 1 :(得分:-1)
如果我对#one
:
$(document).ready(){
var url = '/Home/GetBookingsTicker';
var one = $('#one').val();
$('#button').on('click',function(){
$.ajax({
url: url,
cache: false,
type:"GET",
success: function (response) {
$('#marqueeTop').replaceWith(response);
setColors(one);
},
failure: function () {
alert("Failed to update!")
}
});
}
}