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

hel*_*ing 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');
});
Run Code Online (Sandbox Code Playgroud)

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">
Run Code Online (Sandbox Code Playgroud)

Yas*_*lam 33

这很简单:

$('#action').val("1");
Run Code Online (Sandbox Code Playgroud)

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


ale*_*lex 21

你的jQuery代码完美无缺.隐藏字段更新.

  • @ max4ever您正在阅读序列化HTML,其中`value`属性将反映其原始值.你不应该盲目使用`innerHTML`相关方法的众多原因之一. (3认同)

San*_*kha 5

似乎工作

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

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

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

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

});
Run Code Online (Sandbox Code Playgroud)

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