繁体   English   中英

textarea.val()值更改但不在页面上显示

[英]textarea.val() value changing but not displaying on page

我有一个这样的文本区域,

<textarea id="txtaFilter" cols="45" rows="5"></textarea>

和以下脚本,

$(document).ready(function () {
    $(".selector").bind('change', function () {
        var value = $(this).val();
        $("#txtaFilter").val($("#txtaFilter").val() + value);
        $(this).children('option:eq(0)').prop('selected', true);
    });
});

其中“ .selector”是应用于两个下拉列表的类。

当我在下拉列表中选择一个值时,它似乎无能为力,但是在chrome中查看调试器后,它正在更改该值,只是不显示它。

有人知道为什么是这样吗? .val()属性是否缺少我特别的东西?


问题方案:

我忘记了删除$(this).siblings(“#txtaFilter”)时页面上有多个“ #txtaFilter”,因此它正在访问隐藏的而不是可见的。 抱歉,我也猜错了:/

您可以使用val方法:

$("#txtaFilter").val(function(i, oldVal){
   return oldVal + value
});

使用.val()获取文本区域的文本。

$(document).ready(function () {
    $(".selector").bind('change', function () {
        var value = $(this).val();
        var txtaFilter = $("#txtaFilter");
        txtaFilter.val(txtaFilter.val()+value);
        $(this).children('option:eq(0)').attr('selected', true);
    });
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM