Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/410.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
使用javascript调用操作_Javascript_Html_Playframework - Fatal编程技术网

使用javascript调用操作

使用javascript调用操作,javascript,html,playframework,Javascript,Html,Playframework,对于PLAY框架来说是相当新的,并且由于我工作中的限制,我们使用的是1.2.5版本,而到目前为止,我能够通过表单提交使用常规流程完成从HTML到控制器的所有流程。我想从JavaScript函数调用Application.Action 虽然我有一个输入信息的表单,但可以单击另一个非提交按钮,在单独的页面上查看额外信息。我想通过“onClick”调用JavaScript函数,并在JavaScript函数内部调用“@Application.Action(一些参数…) 在调用操作之前,我需要获取特定输入

对于PLAY框架来说是相当新的,并且由于我工作中的限制,我们使用的是1.2.5版本,而到目前为止,我能够通过表单提交使用常规流程完成从HTML到控制器的所有流程。我想从JavaScript函数调用Application.Action

虽然我有一个输入信息的表单,但可以单击另一个非提交按钮,在单独的页面上查看额外信息。我想通过“onClick”调用JavaScript函数,并在JavaScript函数内部调用“@Application.Action(一些参数…)

在调用操作之前,我需要获取特定输入字段中的内容

我试图通过播放“弹出窗口”来实现这一点,但这似乎不起作用,因为我无法传递参数

下面是我的片段:

在HTML文件中(扩展拥有所有javascript文件“include”的main.HTML)

当然,这是行不通的

有没有办法做到这一点

我必须为此创建路线吗

通过替换,我可以到达一个单独的页面

window.location = "@{Application.moreInfo(inputField1, inputField2, inputField3)}";

只要我有路线

 /goThere   Application.goThere
GET     /moreinfo/{foo}/{bar}        Application.moreInfo
但是我想不出传递参数的方法,我试着像

/goThere/{inputField1}{inputField2}{inputField3}    Application.goThere(inputField1...)
但是我想我也没有正确的语法

是否有方法调用Application.Action并从JavaScript函数向其传递参数/字段

非常感谢您的帮助

内置模板标签正是您想要的

例如:

假设你有一条路线

 /goThere   Application.goThere
GET     /moreinfo/{foo}/{bar}        Application.moreInfo
您可以使用
jsAction
的结果来获取包含所需参数的正确URL:

var fieldOne = "I'm a Javascript variable";
var fieldTwo = "Really? Me too";
var moreInfoAction = #{jsAction @Application.moreInfo(":foo", ":bar") /};

// and since it looks like you want to set the current location
// to your freshly obtained URL:
window.location.href = moreInfoAction({"foo": fieldOne, "bar": fieldTwo});

现在还不清楚你在问什么。这一切都可以用jQuery轻松完成。你为什么不想用它?澄清:在使用表单控制器流程时,您有。。。我希望能够单击另一个按钮-onClick=myFunction()以显示不同的页面,然后从新页面{Application.doStuff(someParam)}回调该操作-因此如何调用应用程序。JavaScript函数的操作Bondye,我希望在单击非提交按钮时调用不同的页面。这里会有一个提交按钮和一个更多信息按钮,当点击更多信息按钮时,你会转到一个javascript函数,并用所有参数回调Application.Action
var fieldOne = "I'm a Javascript variable";
var fieldTwo = "Really? Me too";
var moreInfoAction = #{jsAction @Application.moreInfo(":foo", ":bar") /};

// and since it looks like you want to set the current location
// to your freshly obtained URL:
window.location.href = moreInfoAction({"foo": fieldOne, "bar": fieldTwo});