gpt4 book ai didi

javascript - 更改验证消息并禁用下拉菜单更改上的按钮

转载 作者:行者123 更新时间:2023-11-29 14:44:39 24 4
gpt4 key购买 nike

我有以下代码:

$("#solDate").change(function () {
if ($(this).val().trim() == '') {
$("#solvedBy").val('Pick an option');
}
else {
$("#solvedBy").val('Please, pick the issue solver');
}
});

$("#solvedBy").change(function () {
if ($(this).val() == 'Please, pick the issue solver') {
//if (document.getElementById("solvedBy").valueOf == 'Please, pick the issue solver') {
$("#saveBtn").attr('disabled', true);
$("#slvByValMsg").text('You have solution date and no solver');
}
else {
$("#saveBtn").attr('disabled', false);
$("#slvByValMsg").text('');;
}
});

solDate 是一个日期文本框,而 solvedBy 是一个下拉菜单。这两个脚本都可以完美运行,但是当我尝试用第一个触发第二个时,它会中断。

简而言之,顺序是:当人们选择解决方案日期时,下拉菜单中会出现文本“请选择问题解决者”。发生这种情况时,按钮应该被禁用并且错误消息应该出现,直到人们选择一个求解器。

当我将 solvedBy 设置为“请选择问题解决者”时,该命令有效。当我设置日期时,solvedBy 的值会发生变化,但第二个脚本不会执行(我认为它不会将其识别为更改)。注释行也没有帮助。

最佳答案

您只需调用 .change()方法。

Note: Changing the value of an input element using JavaScript, using .val() for example, won't fire the event.

查看此 answer为什么 .val() 不会自动调用 .change()

$("#solDate").change(function () {
if ($(this).val().trim() == '') {
$("#solvedBy").val('Pick an option').change();
}
else {
$("#solvedBy").val('Please, pick the issue solver').change();
}
});

关于javascript - 更改验证消息并禁用下拉菜单更改上的按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34285699/

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