为什么 .focus() 不起作用,而 .css(“color”,“red”) 在同一个选择器上起作用

Why does .focus() not work when .css("color","red") does on the same selector?

本文关键字:同一个 选择器 起作用 red focus css 为什么 color 不起作用      更新时间:2023-09-26
$(focus_On).focus();其中

focus_on = #start_Time_Mo不会将焦点设置为该输入字段。

其中 as $(focus_On).css("color","red"); 将该字段中的文本设置为红色。

为什么.focus()现在有效?

示例代码:

  • 单击时设置$last_Time = $(event.target);
  • #start_Time_XX是动态创建的,因此on .

检查有效的时间范围后,如果时间超出范围,则以红色字体突出显示,并将焦点设置回该输入字段。

$("#detail_Section").on("blur", "#start_Time_Mo, #start_Time_Tu, #start_Time_Wed, #start_Time_Th, #start_Time_Fr, #start_Time_Sa, #start_Time_Su", function(event) {
    earliest = (period_Definitions["morning_Start"]).split(":");
    earliest_Time = new Date(1970, 1, 1, earliest["0"], earliest["1"], 0, 0);
    latest = (period_Definitions["evening_End"]).split(":");
    latest_Time = new Date(1970, 1, 1, latest["0"], latest["1"], 0, 0);
    test_Times = ($last_Time.val()).split(":");
    test_Time = new Date(1970, 1, 1, test_Times["0"], test_Times["1"], 0, 0);
    if (test_Time >= earliest_Time && test_Time <= latest_Time) {
        console.log("time good");
    } else {
        focus_On = "#" + $last_Time.attr("id");
        $(focus_On).css("color", "red");
        $(focus_On).focus();
    }
    last_String = "";
});

令人讨厌的是,这在 JS 中有效 小提琴:小提琴

尝试喜欢

$("#[id^="+ $last_Time.attr("id")+"]").focus(function()
{
   css("color","red")
});