首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用Laravel + Jquery从textarea到textarea?

如何使用Laravel + Jquery从textarea到textarea?
EN

Stack Overflow用户
提问于 2017-08-04 19:31:21
回答 2查看 1.5K关注 0票数 1

如何使用laravel和jquery从一个文本区域获取值到另一个文本区域。到目前为止我有这些文件。路由:

代码语言:javascript
复制
Route::post('/post', 'PostController@post');

主计长:

代码语言:javascript
复制
class PostController extends Controller
{
       public function post(Request $request)
    {

 $request->json()->all();

    }
}

JQuery文件:

代码语言:javascript
复制
$(function(){


 $('#insert').on('click', function(e){
     e.preventDefault();
 var intrare = $('textarea#firsttextarea').val();
  $.ajax({
    type:'POST',
    url: '/post',
    data: {intrare: intrare},
    success: function(data){
       $('textarea#secondtextarea').val(data);
    }

 });
 });

});

而html:

代码语言:javascript
复制
<textarea class="form-control" name="firsttextarea" rows="10" id="firsttextarea" ></textarea>

<button  id="insert" class="btn btn-md btn-primary"><span class="glyphicon glyphicon-circle-arrow-right"></span>Insert</button>

<textarea class="form-control" name="secondtextarea" rows="10" id="secondtextarea" ></textarea>

我按下按钮什么都不会发生。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-08-04 19:41:20

尝试一下,您不会在Controller方法中返回响应。

代码语言:javascript
复制
class PostController extends Controller
{
    public function post(Request $request)
    {      
        return response()->json([
            'data' => $request->get('intrare'),
        ]);
    }
}

然后,把这个添加到你的刀刃文件中。

代码语言:javascript
复制
<meta name="csrf-token" content="{{ csrf_token() }}">

并将您的JS替换为以下内容:

代码语言:javascript
复制
$(function() {

  // We need CSRF Token in our ajax request so we can
  // validate the POST request
  $.ajaxSetup({
    headers: {
      "X-CSRF-TOKEN": $('meta[name="csrf-token"]').attr("content")
    }
  });

  // Insert text from first textarea to the other textarea
  $("#insert").on("click", function(e) {
    e.preventDefault();
    var intrare = $("textarea#firsttextarea").val();
    $.ajax({
      type: "POST",
      url: "/post",
      data: { intrare: intrare },
      success: function(response) {
        $("textarea#secondtextarea").val(response.data);
      }
    });
  });

});
票数 1
EN

Stack Overflow用户

发布于 2017-08-04 19:54:37

第一个问题可能是CSRF的验证。如果是这样,您可以禁用它,也可以添加{{ csrf_token() }}。那么,您的post操作应该如下所示:

代码语言:javascript
复制
public function post(Request $request)
{
    return response()->json($request->all());
}

我查过了,一切正常。但是在textarea中插入[Object object],因为它是JSON。您可以在Jquery脚本中添加如下所示的JSON.stringify:

代码语言:javascript
复制
$(function(){
    $('#insert').on('click', function(e){
        e.preventDefault();
        var intrare = $('textarea#firsttextarea').val();
        $.ajax({
            type:'POST',
            url: '/post',
            data: {intrare: intrare},
            success: function(data){
                $('textarea#secondtextarea').val(JSON.stringify(data));
            }

        });
    });

});
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45514225

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档