如何使用“onClick =”window.location.href发送表单值“

时间:2014-08-28 18:44:26

标签: javascript php html

我需要保持同一页面,所以我没有使用提交按钮。我怎样才能进入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>

这不起作用。其他选择?

3 个答案:

答案 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();

我希望这会有所帮助。 ^^