【问题标题】:Display text in textarea using javascript使用 javascript 在 textarea 中显示文本
【发布时间】:2017-01-10 11:41:22
【问题描述】:

我在index.jsp中使用了下面的代码来设置textarea INPUT_TEXT和INPUT_TEXT2的值在一个表单中经过扩展处理,其中文本经过一个servlet,一个java类和预处理然后数据被返回到第二个文本区域。

代码一:

<td>
<% 
   String txtvalue="";
   if(request.getAttribute("x")!=null){
       txtvalue=request.getAttribute("x").toString();
       System.out.println("txtvalue= "+txtvalue);
 }%>

 <textarea id="INPUT_TEXT" name="INPUT_TEXT" style="font-size: 13pt;" rows="15" cols="50"><%=txtvalue%></textarea>
</td>

<td>
<% 
    String txt="";
    if(request.getAttribute("y")!=null){
       txt=request.getAttribute("y").toString();
       System.out.println("txt= "+txt);
 }%>

 <textarea id="INPUT_TEXT2" name="INPUT_TEXT2" style="font-size: 13pt;" rows="15" cols="50"><%=txt%></textarea>
 </td>

我尝试过使用

1)innerHTML、

2) 使用 document.getElementById("INPUT_TEXT") 和设置值

3)我在代码中给出的当前方法。

不幸的是,没有任何效果!

方法 3(代码 I)以前可以工作,但后来我不得不对 onclick 后调用的函数进行一些更改,以发出 POST 请求,现在看起来像这样:

代码二

function submitPreprocessForm() {
   var postData=$("#maryWebClient").serializeArray();
   $.ajax({
     url: "preprocess",
     context:this,
     type:"POST",
     dataType:"JSON",
     data:postData,
     contentType: "application/x-www-form-urlencoded;charset=utf-8",
     success: function(response){
     }
 });
}

现在,txt 和 txtvalue(代码 I)仅打印到 NetBeans 输出控制台(正确,我可能会添加)而不是网页,其中当我点击提交按钮时被重置。因此,尽管整个内部功能完美运行,但唯一的问题是文本没有显示在相应的文本区域中。 请帮忙。

【问题讨论】:

  • 你在response 得到了什么?显示console.log(response)的结果
  • 你可以试试` `。 textarea 中的值是通过获取元素中输入字段的引用然后调用 element.value 来获取的。您可以获取或设置它。
  • 不,您不能在textarea 中将值设置为属性。您需要在textarea 标签内编写 HTML。
  • 不需要“响应”。 NetBeans 将其显示为“未使用”,删除它后,代码可以正常工作。
  • @Vineet 你能说得更具体一点吗?

标签: javascript html ajax forms


【解决方案1】:

以下方法解决了我的问题,文本显示在 textrea 中。

success: function(response){
             $("#INPUT_TEXT").val(response["x"]);
             $("#INPUT_TEXT2").val(response["y"]);
         },

我不得不删除 &lt;%=txtvalue%&gt;,因为它导致 textarea 被初始化为 null。

【讨论】:

    【解决方案2】:
    <div>
        <textarea id="text" ></textarea>
        <button type="submit" onclick="show()"> submit</button>
    </div>
    
    function show(){
         let a = document.getElementById("text");
         console.log(a.value);
    }
    

    上面的JS函数show(),点击提交按钮后在textarea中显示内容。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-10-30
      • 1970-01-01
      相关资源
      最近更新 更多