2015-02-05 69 views
1

我写了一个小小的“网页”,用jsonrpc在我的xbmc上启动流。现在我面临的问题是我总是必须发送表单请求两次以使其工作。是否可以使用window.open函数?或者我错过了什么?JavaScript重定向仅在第二次尝试

<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> 
+1

也许这是你的榜样一个错字,但'梅索德=“POST”'应该是'方法=“POST”' – 2015-02-05 15:08:19

+0

@Bartdude我修正它,但它不是行为的来源 – 2015-02-05 15:35:10

回答

0

为什么当你打电话给postFunction()?它并没有在decliration正道的说法是

<form id="frmGui" name="gui" action="#" onSubmit="postFunction()" methode="POST"> 

删除这里面postFunction支柱

+0

仍然不会改变任何东西 – 2015-02-05 15:32:56

相关问题