代码之家  ›  专栏  ›  技术社区  ›  Will

设置隐藏输入的值

  •  1
  • Will  · 技术社区  · 16 年前

    想法:我通过常规Javascript或jQuery设置type=“hidden”的输入值。

    问题是:jQuery和document.getElementById都找不到隐藏的输入,尽管我完全确定选择器是正确的,并且没有冲突的元素。

    我真的不能发布太多,因为它充满了相当复杂的PHP,当我只是看它的时候,我会感到困惑。

    下面是javascript:

    $("#" + input.id.substr(0,2) + "_budget_hidden").val(budg_total);
    

    选择器没有问题

    以下是HTML:

    <input type="hidden" name="s<?=$step_counter?>_budget_hidden" 
           id="s<?=$step_counter?>_budget_hidden" value="0" />
    

    代码有点脱离上下文,但这更像是Javascript的一般问题,而不是语法错误。思想?

    3 回复  |  直到 16 年前
        1
  •  2
  •   Gregoire    16 年前

    在 $("#" + input.id.substr(0,2) + "_budget_hidden").val(budg_total); 在隐藏id的第一个下划线前加两个字符。但是,隐藏id只有一个字符

    编辑

    好的 <?= ?> 在问题编辑之前被隐藏。

    $(document).ready(function(){
        $("#" + input.id.substr(0,2) + "_budget_hidden").bind("keyPressed",function(){
            $("#" + input.id.substr(0,2) + "_budget_hidden").val(budg_total);
         }
    });
    
        2
  •  1
  •   Siva    16 年前

    仅供参考: 我们可以使用jQuery获得隐藏的输入值,甚至还可以使用jQuery编辑任何隐藏的输入值。

    substr(0, 2) 所以你确定 $step_variable

    我在下面给出一些示例代码,请检查一下。

    下面是javascript:

        var input_id = $("hidden_val").attr("id").substr(1);
        $("#" + input_id + "_budget_hidden").val(budg_total);
    

    以下是HTML:

        input type="hidden" class="hidden_val" name="s_budget_hidden" id="s" value="0" 
    

        3
  •  0
  •   user172632 user172632    16 年前

    我认为input.id.substr(0,2)说从字符串的开头开始,取2个字符并使用它。

    http://www.w3schools.com/jsref/jsref_substr.asp

    尝试使用Firebug查看该方法调用的结果。