我写了一个"网页"使用jsonrpc在我的xbmc上启动流。现在我遇到的问题是我总是要发送两次表单请求以使其工作。可能是因为我使用window.open函数错了?或者我错过了什么?
<html>
<body>
<head>
<script type="text/javascript">
function postFunction() { // inside script tags
var vForm = document.getElementById("frmGui");
var vStrServer = "";
var vStrFile = "";
var vStrPost = "http://";
vStrServer = vForm.idServer.value;
vStrFile = vForm.idFile.value;
vStrPost += vStrServer+"/jsonrpc?request={\"jsonrpc\":\"2.0\", ";
vStrPost += "\"id\":0, \"method\": \"Player.Open\", \"params\":{\"item\""
vStrPost += ":{\"file\":\""+vStrFile+"\"}}}";
window.open(vStrPost,"_self");
}
</script>
</head>
<table>
<tr>
<form id="frmGui" name="gui" action="#" onSubmit="postFunction(this)" methode="POST">
<td><input id="idServer" name="server" type="text" value="IP_ADRESS"/></td>
</tr>
<tr>
<td><input id="idFile" name="file" type="text"/></td>
</tr>
<tr>
<td><input type="submit"/></td>
</tr>
</form>
</table>
</body>
</html>
答案 0 :(得分:1)
尝试将其放入window.onload(cb)。
https://developer.mozilla.org/en-US/docs/Web/API/GlobalEventHandlers.onload
答案 1 :(得分:0)
为什么在致电postFunction()
时传递参数?它没有论证正确的方式是
<form id="frmGui" name="gui" action="#" onSubmit="postFunction()" methode="POST">
删除postFunction
大括号内的