嗨所以我有一张表格..
echo "<form onsubmit='return deleteRecord()' method='post' action='delete.php'>";
echo "<input type='hidden' name='hiddensimcode' value='$code' >";
echo "<input type='submit' id='deletesimbtn' value='Delete Product'>";
echo "</form>";
和javascript ...
function deleteRecord() {
if(confirm("Are you sure you want to delete this product?")){
return true;
} else {
return false;
}
}
基本上它是一个删除记录的“删除”按钮,但弹出窗口似乎可以验证用户的操作。
我的问题是数据'$ code'没有发布到delete.php?
有人有想法吗?感谢
答案 0 :(得分:1)
您应该将函数名称delete()更改为delete_product()。因为delete是JS中的预定义关键字。尝试使用其他名称。
答案 1 :(得分:0)
在js控制台中查看,您会看到:
Uncaught SyntaxError: Unexpected token delete
这是因为它是一个保留的JS关键字,相应地更改了函数名称和对它的调用。
答案 2 :(得分:0)
正如其他人所说,“删除”函数名称与js引擎冲突 - 更改了js函数名称,如下所示,它可以正常工作。 (也稍微改进了功能)
echo "
<form onsubmit='return delete_product()' method='post' action='target.php'>
<input type='hidden' name='hidden' value='$code' >
<input type='submit' id='deletesimbtn' value='Delete Product'>
</form>";
function delete_product() {
return confirm( "Are you sure you want to delete this product?" );
}
答案 3 :(得分:0)
好的我必须说出来,因为其他人已经这样做了,这就是解决方案:
如其他人所述,更改&#34;删除&#34;功能名称。
一个小例子:
File Structure:
public_html
|----- index.php
|----- delete.php
示例index.php
<?php
$code = "dummyCodeXssF";
echo "<form onsubmit='return deleteRecord()' method='post' action='delete.php'>";
echo "<input type='hidden' name='hiddensimcode' value='$code' >";
echo "<input type='submit' id='deletesimbtn' value='Delete Product'>";
echo "</form>";
?>
<script>
function deleteRecord() {
if( confirm("Are you sure you want to delete this product?") ) {
return true;
} else {
return false;
}
}
</script>
示例delete.php
<?php
echo "<pre>";
var_export( $_POST );
输出:
array (
'hiddensimcode' => 'dummyCodeXssF',
)