Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/340.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 简单的ajax播放中后期调用框架_Java_Ajax_Playframework_Playframework 2.2 - Fatal编程技术网

Java 简单的ajax播放中后期调用框架

Java 简单的ajax播放中后期调用框架,java,ajax,playframework,playframework-2.2,Java,Ajax,Playframework,Playframework 2.2,大家好,我正在尝试在我的网站上使用ajax将一个按钮按下后发送一个字符串到Play框架中的java代码中。我找不到一个简单的教程,简单地解释如何做到这一点。他们都在使用模板。 假设我的java方法是: public static Result upload() { } 我的按钮正在调用一个javascript方法,该方法在单击时从另一个输入中获取字符串: <input id="submit" type="submit" onclick="send();"> 我没有测试,但类似

大家好,我正在尝试在我的网站上使用ajax将一个按钮按下后发送一个字符串到Play框架中的java代码中。我找不到一个简单的教程,简单地解释如何做到这一点。他们都在使用模板。 假设我的java方法是:

  public static Result upload() { }
我的按钮正在调用一个javascript方法,该方法在单击时从另一个输入中获取字符串:

<input id="submit" type="submit" onclick="send();">

我没有测试,但类似的东西应该可以工作

应用程序控制器

public static Result upload() {
    JsonNode node = request().body().asJson().get("stringField");
    String inputString = node.getTextValue();"
    System.out.println(inputString)      // prints the string from the form field
    return ok();
}
路线

POST        /uploadfoostring       controllers.Application.upload()
模板

<input type="text" id="string-field">

<input id="submit" type="submit" onclick="send();">

<script type = "text/javascript" >
  $('#submit').click(function(evt) {
      var inputString = $('#string-field').val();

      var obj = {
        stringField: inputString;
      };

      $.ajax({
        url: "@routes.Application.upload()",
        data: JSON.stringify(obj),
        headers: {
          'Content-Type': 'application/json'
        },
        type: 'POST',
        success: function(res) {
          if (res) {
            console.log("Success!");
          } else {
            console.log("Failed...");
          }
        }
      });
    }
</script>

$(“#提交”)。单击(函数(evt){
var inputString=$(“#字符串字段”).val();
var obj={
stringField:inputString;
};
$.ajax({
url:“@routes.Application.upload()”,
数据:JSON.stringify(obj),
标题:{
“内容类型”:“应用程序/json”
},
键入:“POST”,
成功:功能(res){
如果(res){
console.log(“成功!”);
}否则{
日志(“失败…”);
}
}
});
}

@Diego,是的,谢谢。我将名称切换了一半。我进行了编辑。我在这一行上得到了Nullpointer异常
JsonNode node=request().body().asJson().get(“stringField”)
我还想发送我的输入文件。目前我的表单有一个发送多部分的操作to/upload。这就是ajax没有写入的原因吗?
POST        /home/testPost                               controllers.Application.testPost

//Server Side.
def testPost = Action { request =>

    println("testPost Called");
    println(request.body.asFormUrlEncoded.get("name").head);
    Ok("Succeeded");

}


Client Side:

public static testPost(){
$.ajax({
url:"/dialog/testPost",
type:"POST",
data:{
name:"Varadharajan R"
},
success:function(response){
alert(response);
}
});
}