我想执行JQuery切换功能(只有在满足某个条件时才切换输入字段以使其可供客户端访问)。 (我正在使用JavaScript测试条件。)我可以这样做吗?出于某种原因,当我在JavaScript函数中设置它时,JQuery切换功能不起作用,所以我不确定我做错了什么,或者根本不能做到这一点。
<script type="text/javascript">
function conditionalToggle()
{
if (conditionIsMet)
{
// JQuery toggle call here
}
}
</script>
答案 0 :(得分:3)
您可能没有正确使用jQuery,或者不执行该函数,或者(新jQuery用户最常见的错误)不等待DOM准备就绪:
function foo(){
if ("foo" === "foo")
$('#elementId').toggle();
}
$(function(){ // functions inside $() runs after the DOM is ready.
foo();
});
elementId
是元素ID的占位符。
Simple DEMO
请注意,您可以使用此toggle
重载:
$('#elementId').toggle(showTheElementOrNot);
toggle( showOrHide )
showOrHide
一个布尔值,指示是否显示或隐藏元素。
答案 1 :(得分:1)
如果在ready()函数内部,jQuery应该可以工作
<script type="text/javascript">
$(function() {
function conditionalToggle(){
if (conditionIsMet) {
$(element).toggle();
}
}
});
</script>
或只是这样做:
<script type="text/javascript">
function conditionalToggle() {
if (conditionIsMet) {
element.style.display = element.style.display=='block' ? 'none' : 'block';
}
{
</script>
答案 2 :(得分:0)
你可以在DOM准备就绪时做到这一点,如果你还有问题,你也可以这样做:
<script type="text/javascript">
$(window).load(function() {
conditionIsMet && $('#elementId').toggle();
});
</script>