我需要保持同一页面,所以我没有使用提交按钮。我怎样才能进入php页面并发送表单值? exempel:
<form action="" method="post" enctype="multipart/form-data">
<label for="file">Filename:</label> <input type="file" name="csv" id="csv"/>
<input type= "button" value="immport" onClick = "window.location.href =readFile.php'
.(this.form);" >
</form>
这不起作用。其他选择?
答案 0 :(得分:1)
如果您不想使用AJAX调用(?...请参阅注释),有一种经典的方式来提交您的表单,但这会导致重新加载实际页面:< / p>
表单与逻辑位于同一脚本中。在您的情况下,那将是readFile.php
。
使用$_SERVER['PHP_SELF']
作为表单操作:
<form action="<?php echo $_SERVER['PHP_SELF'] ?>" method="post" enctype="multipart/form-data">
<label for="file">Filename:</label> <input type="file" name="csv" id="csv"/>
<input type= "submit" value="immport" />
</form>
表单将提交到实际页面。来自docs:
$_SERVER
是一个包含标题,路径等信息的数组。 和脚本位置。...
'PHP_SELF'
当前正在执行的脚本的文件名,相对于 文件根....
答案 1 :(得分:0)
尝试此代码对您有用:
<form action="readFile.php" name="myform" method="post" enctype="multipart/form-data">
<label for="file">Filename:</label> <input type="file" name="csv" id="csv"/>
<input type="button" value="immport" onClick = "document.myform.submit();" >
</form>
或者您可以使用此javascript函数提交没有提交按钮的表单:
<form action="readFile.php" name="myform" method="post" enctype="multipart/form-data">
<label for="file">Filename:</label> <input type="file" name="csv" id="csv"/>
<input type="button" value="immport" onClick = "submitform();" >
</form>
<script type="text/javascript">
function submitform()
{
if(document.myform.submit())
{//this check triggers the validations
document.myform.submit();
}
}
</script>
答案 2 :(得分:-2)
HTML5实际上非常简单。查看W3Schools:http://www.w3schools.com/tags/tag_button.asp
使用HTML5,BUTTON标签可以选择指定&#34; formtarget&#34;。再次,W3Schools:http://www.w3schools.com/tags/att_button_formtarget.asp
这允许您告诉表单提交到不同的目标窗口。从那里,您将向提交页面添加一条关于提交时关闭的指令,这样用户应该只看到正在打开的窗口的闪光。
您的提交按钮可能如下所示:
<button type="submit" formtarget="submission">Submit</button>
虽然您提交的页面可能包含一个简单的JavaScript,如:
window.close();
我希望这会有所帮助。 ^^