我在创建带有文本和图像的按钮时遇到问题。HTML +带文本和图像的按钮
<td>
<button type="submit" name="report" value="Report"
<?php
if($tab == 'Excel')
echo "id=\"tab_inactive\"";
else
echo "id=\"tab_active\"" ; ?>>
<img src="images/report.gif" alt="Report"/>Report
</button>
<button type="submit" name="excel" value="Excel"
<?php
if($tab == 'Excel')
echo "id=\"tab_active\"";
else
echo "id=\"tab_inactive\"" ; ?>>
<img src="images/Excel.gif" alt="Excel" width="16" height="16" /> Excel
</button>
</td>
这里$标签是
$tab = strlen(trim($_POST[excel]))>0 ? $_POST[excel] : $_POST[report];
我试过这种方式,但这表现如此奇怪。 点击按钮: - 提交功能在Firefox中正常工作,但不在IE中。
而不是提交值(在这个例子中的值是“报告”和“Excel”),实际上是提交按钮的标签。
这就是如果我检查数组PRINT_R($ _ POST)的值。它的价值是
Array ([report] =>(Icon that i used) Report
[excel] => (Icon that i used) Excel
[frm_analysis] => [to_analysis] =>)
在这里,我有超过1个按钮后,所有的标签都提交eventhough按下其中之一。我不知道如何捕捉哪个按钮被按下。
我甚至试过改变button type=button and onclick="document.formname.submit()"
即使这样做也是一样的。
你能帮我解决这个问题吗?
谢谢你的快速回复。这里onclick,我想提交表单。所以如果我写onclick = document.Formname.submit();.我将如何知道哪个按钮被按下。我是否需要通过我的javascript或其他选择中的隐藏文本字段处理该按钮值? – satya 2010-05-19 14:29:57
就我个人而言,我会使用executeFunction(this),并让executeFunction()设置一个隐藏字段,以确定在从函数内部进行实际提交之前哪个按钮已被点击(由此识别) – 2010-05-19 15:21:45