JQuery:更改隐藏输入字段的值

时间:2011-03-13 12:42:32

标签: jquery hidden-field

我有一个hella时间设置隐藏输入的值。

我想将HTML从选项标签之间传递到隐藏字段 - 结束运行它将来自wordpress'wp_list_dropdowns()的页面标题。我已经让它返回文本很好,并且在我的更改事件中它正确地添加了一些css(显然在隐藏字段上不需要,但我试图确定事情发生在哪里)。如果我将隐藏的输入更改为文本输入,则有效。我已经在SO的几个地方看到过这是可能的,(改变了隐藏输入的值),但现在有些东西阻碍了我,我看不出答案。

这是JSFiddle

JavaScript的:

$(".selector").change(function() {
    var $value = $(this).val();
    var $title = $(this).children('option[value='+$value+']').html();
    alert($title); 
    $('input#bacon').val($title).css('border','3px solid blue');
});

HTML:

<select class="selector" name="testselect">
    <option value="1">One</option>
    <option value="2">Two</option>
    <option value="3">Three</option>
</select>
</h3>

<input id="bacon" type="hidden" class="bacon" value="" name="testinput">

4 个答案:

答案 0 :(得分:32)

这很简单:

$('#action').val("1");

#action是隐藏的输入字段ID。

答案 1 :(得分:20)

您的jQuery代码完美无缺。 The hidden field is being updated

答案 2 :(得分:5)

似乎工作

$(".selector").change(function() {

    var $value = $(this).val();

    var $title = $(this).children('option[value='+$value+']').html();

    $('#bacon').val($title);

});

请检查你的萤火虫。并且不要将CSS放在隐藏的输入上。

答案 3 :(得分:0)

如果您在Drupal中执行此操作并使用Form API在hook_form_alter(例如)中将#type从text更改为'hidden',请注意输出HTML将具有不同(或省略)的DIV包装器, ID和类名。