gpt4 book ai didi

javascript - 特定的 javascript 代码仅适用于警报语句

转载 作者:行者123 更新时间:2023-11-28 21:11:25 24 4
gpt4 key购买 nike

所以我有一个下拉菜单,应该由 Json 对象值填充。代码如下:

$("#sport").val(model.SportId);

嗯,当我加载页面时,它不起作用。下拉列表默认为默认的“未选择”选项。因此,我进行了 ghetto 调试,并对 model.SportId 发出警报以查看发生了什么。

当我刷新页面时......它起作用了。我唯一做的就是

alert(model.SportId);

它会弹出一个弹出窗口,显示“1”,然后下拉菜单值转到选项“美国职业棒球大联盟”(这是该选项值的文本)。就是这样。这是我唯一改变的事情。将警报放在第一行代码之前。如果我把警报放在代码后面,它就不起作用。我不知道这是为什么。

派生 Json 对象的 View 模型将 SportId 作为可为 null 的 int。这可能有什么关系吗?

编辑:

好的,在我的 razor View 中,这是我的 javascript:

<script type="text/javascript">
$(document).ready(function () {
var model=@Html.Raw(Json.Encode(Model.Title));
var read=@Html.Raw(Json.Encode(Model));
var sportsurl='@Url.Action("GetSports", "Titles")';
var sportsteamsurl='@Url.Action("GetSportsTeams", "Titles")';

TitleBasicEdit(model, read, sportsurl, sportsteamsurl);
});

JavaScript 函数 titlebasicedit 是:

function TitleBasicEdit(model, url, read, backurl, seasonsurl, autocompleteurl, urlforward, sportsurl, sportsteamsurl) {
if ((model.TitleTypeId == 3) || (model.TitleTypeId == 8)) {
GetSports(sportsurl);
SportsDependency(sportsteamsurl);
alert(model.SportId);
$("#sport").val(model.SportId);
$("#sport").change();
$("#hometeam").val(model.HomeSportTeamId);
$("#awayteam").val(model.AwaySportTeamId);
}

最佳答案

这可能是与您在填充选项时执行的异步任务(例如 ajax 请求)相关的问题。这可能是alert()起作用的原因:它停止执行oj javascript,以便任务有足够的时间完成(无论如何,链接可能会非常感激)。

编辑:GetSports() 函数可能就是该任务;

关于javascript - 特定的 javascript 代码仅适用于警报语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8523099/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com