javascript - 根据所选值更改文本区域内容

标签 javascript jquery

我有一份表格。在此表单中包含文本区域和下拉字段。当我从此下拉列表中选择多个选项时,值将显示在该文本区域内,当我从下拉列表中取消选择选项时,它们将从文本区域中删除。但现在我的问题是,当我编辑或添加内容到此文本区域后,我无法使用用户输入的数据将选定的值添加到此文本区域。

我想将 textarea 内容视为输入的文本 + 选定的值。

这怎么可能?

我的代码在这里:

 <!doctype html>
    <html lang="en">
    <head>
     <meta charset="utf-8">
     <title>val demo</title>
     <style>
      p {
      color: red;
      margin: 4px;
      }
      b {
       color: blue;
      }
     </style>
     <script src="//code.jquery.com/jquery-1.10.2.js"></script>
    </head>
    <body>
     <textarea id="test"></textarea>
     <select id="multiple" multiple="multiple">
       <option selected="selected">Multiple</option>
  <option>Multiple2</option>
  <option selected="selected">Multiple3</option>
</select>
<script>
function displayVals() {
  var singleValues = $( "#single" ).val();
  var multipleValues = $( "#multiple" ).val() || [];
  $( "#test" ).val( multipleValues.join( ", " ) );
}

$( "select" ).change( displayVals );
displayVals();
</script>

</body>
</html>

最佳答案

试试这个:

    <!doctype html>
    <html lang="en">
    <head>
     <meta charset="utf-8">
     <title>val demo</title>
     <style>
      p {
      color: red;
      margin: 4px;
      }
      b {
       color: blue;
      }
     </style>
     <script src="//code.jquery.com/jquery-1.10.2.js"></script>
    </head>
    <body>
     <textarea id="test"></textarea>
     <div id="result"></div>
     <select id="multiple" multiple="multiple">
       <option selected="selected">Multiple</option>
  <option>Multiple2</option>
  <option selected="selected">Multiple3</option>
</select>
<script>
function displayVals() {
  // $( "#test" ).val() = '';
  var singleValues = $( "#test" ).val();
  var multipleValues = $( "#multiple" ).val() || [];
  $( "#result" ).html(singleValues+' '+ multipleValues.join( ", " ) );
}

$( "select" ).change( displayVals );
displayVals();
</script>

DEMO

关于javascript - 根据所选值更改文本区域内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20797753/

相关文章:

javascript - 如何从大标题平滑过渡到小静态标题 (Javascript/CSS)

javascript - 如何在不使用 try/catch 的情况下捕获错误或在运行时使用 try/catch 包装代码?

javascript - jQuery 数据表向 tr 添加类

javascript - 将下拉列表或文本输入值保存在同一列中(使用 Laravel 5.5)

jquery - 如果 aria-expanded == true 使用 coffeescript 或 jquery 切换类

javascript - 在 javascript 中使用模数和子字符串的最佳方法

javascript - 在对象中使用 this 时出现 TypeError

javascript - 如何在不进行轮询的情况下从我的 Ruby REST/CRUD API 持续更新我的 ReactJS 客户端?

javascript - 导航链接不起作用( Bootstrap )

javascript - 如何在以前使用 div 的脚本中合并要调用的列表项?