Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/458.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在选择其他元素时隐藏div有困难_Javascript_Jquery_Blur - Fatal编程技术网

Javascript 在选择其他元素时隐藏div有困难

Javascript 在选择其他元素时隐藏div有困难,javascript,jquery,blur,Javascript,Jquery,Blur,当选择按钮状态时,我使用下面的javascript隐藏一个div,但我在内容管理系统上使用此代码。代码工作,但只有在我重新加载页面后(在我做出正确选择后)。我相信我使用模糊和变化的方式可能会出问题。我相信这可能是在不重新加载的情况下使更改更新生效的关键,但我不确定。如有任何帮助,将不胜感激: var choice = $('#Choice').val(); var myDiv = $('#myDiv'); if(choice == 'Option 1'){ $(myDiv).h

当选择按钮状态时,我使用下面的javascript隐藏一个div,但我在内容管理系统上使用此代码。代码工作,但只有在我重新加载页面后(在我做出正确选择后)。我相信我使用模糊和变化的方式可能会出问题。我相信这可能是在不重新加载的情况下使更改更新生效的关键,但我不确定。如有任何帮助,将不胜感激:

var choice = $('#Choice').val();  
var myDiv = $('#myDiv');  

if(choice == 'Option 1'){  
  $(myDiv).hide().blur().change();  
} else {  
  $(myDiv).show().blur().change();  
}
下面是我瞄准的按钮的代码:

选择1
选项2我认为您对jQuery的一些方法有一些误解。你可能想要这个:

const myDiv = $('#myDiv');  

$('#Choice').change(function() {

    const choice = $(this).val();
    
    if (choice === 'Option 1') {  
        myDiv.hide();  
    } else {  
        myDiv.show();  
    }

});

我不确定您的按钮“状态”是什么,因此在您向我们展示您使用该按钮所做的操作后,可能需要对其进行调整。

似乎您需要做的只是为您的
选择
元素设置
更改
事件处理程序。然后,在该处理程序中,只需检查所选内容——如果它是您所关心的,则隐藏
div
,如果不是,则显示它。您无需导致出现
模糊
更改
,因为用户将为您执行此操作

下面是一个例子:

$(“选择”)。在(“更改”,函数()上{
如果(this.value==“选择2”){
$(“div”).hide();
}否则{
$(“div”).show();
}
});

选择1
选择2
选择3

选择选项2时我将隐藏,否则显示
请提供有关您情况的更多上下文。显示的代码何时执行(事件处理程序的一部分)?此外,还包括相关的HTML。它不是事件处理程序的一部分。我不确定是否有一个事件处理程序可以帮助我完成所需的任务。“choice”变量是一个带有多个选项的按钮,选择该选项时将隐藏myDiv。最终,我将有其他变量需要添加到该按钮中(单选按钮,而不是按钮状态)要隐藏该div,需要选择该选项。但我从第一个选项开始,看看如何获得与服务器通信的更改。提供的代码不在函数或事件处理程序中,因为它确实需要在CMS中。那么为什么不在具有选项的元素上设置
change
事件处理程序呢?此代码在较大的文档中的何处?什么时候开?请显示相关的HTML。此外,我需要的选项是一个按钮选项内的具体选择。更改只适用于任何选项选择,对吗?在我们提供更多细节之前,您确实需要编辑您的问题,添加相关的HTML,并回答我的其他问题:您显示的代码插入到更大的JavaScript中的什么位置?什么时候运行?运行得很好。非常感谢。您知道如何检测是否为单选按钮提供了值吗?我需要确保按钮有一个值。我猜我可以通过检测值的长度来实现。没问题。请坐飞机。新问题不适用于注释。@tmd257所有HTML表单输入元素都包含字符串,若要检查元素是否没有值,需要检查是否没有字符串。这是通过检查
(空字符串)来完成的。