PHP - onClick似乎没有工作

时间:2014-11-09 19:27:52

标签: php onclick form-submit

我有一系列可以由用户选择的下拉框。然后我想要两个不同的提交按钮,它们将对所选数据执行两个不同的操作。我试图编写提交按钮来运行选定的PHP,但当我点击按钮什么都不做。任何帮助表示赞赏,我的代码如下。 AFAIK唯一相关的位是我的formSubmit函数和代码底部附近的输入标记。

编辑:我已经编辑了大量代码,并留下了我认为相关的部分。如果需要更多信息,请告诉我。

<!DOCTYPE html>
<?php
require 'config.php';  // Database connection
//////// End of connecting to database ////////
?>
<html>
<head>
<SCRIPT language="JavaScript">
//Scripts

function submitForm(action)
    {
        document.getElementById('f1').action = action;
        document.getElementById('f1').submit();
    }

</script>
</head>
<body>
<div>   
<?Php    

//Beginning of Form
echo "<form method=post name='f1' action =''>";
//Dropdown boxes are here


//This line is what is not working:
echo "<input type='submit' value='Careers' onclick=\"submitForm('rt.php')\">";
echo "</form>";
?>
</div>
</body>
</html>

4 个答案:

答案 0 :(得分:1)

不太确定函数有什么问题,xe4me可能有正确的答案。但是,我刚刚将onClick更改为了这个并且它有效:

onClick=\"document.f1.action='rt.php'; document.f1.submit(); return true;\"

答案 1 :(得分:1)

您在document.getElementById('f1')功能

中使用submitForm
function submitForm(action)
{
    document.getElementById('f1').action = action;
    document.getElementById('f1').submit();
}

但是由于这行代码

,您的表单没有id属性
echo "<form method=post name='f1' action =''>";

因此单击Careers按钮时不会提交表单。您需要通过将上面的代码行更改为

来将id='f1'属性添加到表单中
echo "<form id='f1' method='post' name='f1' action =''>";

答案 2 :(得分:0)

尝试使用jQuery方法:

http://api.jquery.com/jquery.post/How to get ID of clicked element with jQuery

每当点击任何按钮时,找到它的ID并根据它,使用$ .post将数据发布到您想要的位置。

答案 3 :(得分:0)

您必须在按钮中添加一个类,并根据该类名称调用onclick:

 <?Php    

  ....

 echo "<input type='submit' class='submitter' data-action='rt.php' value='Careers' >";
 echo "</form>";
 ?>

//在Javascript中:

 document.getElementByClassName('submitter').onclick = function(){
  var action  = this.data('action');

   document.getElementById('f1').action = action;
   document.getElementById('f1').submit();

}