通过JSON将javascript数组发送到php;不起作用
Sending javascript array to php via JSON doesn't work
我有一个javascript数组,希望通过表单输入隐藏字段将其发送到php。我在这里做的是:
html:
<form method="post" action="a.php" onSubmit="fun();">
<input type="hidden" name="hiddenF" value="">
</form>
和javascript:
function fun()
{
var jArray = [ "One", "Two", "Three"];
document.getElementsByName("hiddenF").value = JSON.stringify(jArray);
}
最后,在php中,我需要一个数组,如下所示,但页面上没有任何内容。
$arr=json_decode($_POST['hiddenF']);
print_r($arr);
document.getElementsByName("hiddenF")
返回一个数组。因此,您需要添加[0]来访问您的隐藏输入。
应该是这样的:
document.getElementsByName("hiddenF")[0].value = JSON.stringify(jArray);
您也可以使用ID属性来完成。。这将工作
<?php
if(isset($_POST["submit"])){
$arr = json_decode($_POST['hiddenF']);
print_r($arr);
}
?>
<script type="text/javascript">
function fun()
{
var jArray = [ "One", "Two", "Three"];
document.getElementById("hiddenF").value = JSON.stringify(jArray);
}
</script>
<form method="post" action="<?=$_SERVER["PHP_SELF"]?>" onSubmit="fun();">
<input type="hidden" name="hiddenF" value="" id="hiddenF">
<input type="submit" name="submit" />
</form>
如果您想让它与name属性一起工作,请按照上面的答案进行。
document.getElementsByName
返回一个数组,因此不能更改此数组的.value
。
// ...
document.getElementsByName("hiddenF")[0].value = JSON.stringify(jArray);
但我建议您使用getElementById
。
HTML:
<input type="hidden" id="hiddenF" name="hiddenF" value="">
JS:
// ...
document.getElementById("hiddenF").value = JSON.stringify(jArray);
试试这个:
Java脚本:
function fun(){
var jArray = [ "One", "Two", "Three"];
document.getElementsByName("hiddenF")[0].value = JSON.stringify(jArray);
}
Html表单:
<form method="post" action="process.php" onSubmit="return fun();">
<input type="hidden" name="hiddenF" value="">
<input type="submit" value="Submit"/>
</form>
Process.php
<?php
$arr=json_decode($_POST['hiddenF']);
print_r($arr);
?>
相关文章:
- PHP邮件()不起作用
- 使用PHP插入HTML在JavaScript上不起作用
- AJAX 调用 PHP 不起作用
- PHP不起作用
- 基本的 AJAX 请求 Javascript/PHP 不起作用
- Ajax发布到PHP不起作用
- 通过javascript使用Ajax Post将Json传递给php不起作用
- 在函数中导入JavaScript.php不起作用
- 使用 JQuery AJAX 将值传递给 PHP 不起作用,数组混乱
- 将变量从 Ajax 传递到 PHP 不起作用
- 将 JavaScript 对象传递给 PHP 不起作用
- Ajax调用JS+PHP不起作用
- 简单的PHP不起作用
- Chrome上的HTML5画布和php不起作用
- 将Javascript变量传递给PHP不起作用
- Javascript生成PHP不起作用
- Javascript + PHP不起作用
- 元标记中的PHP不起作用
- JavaScript函数中的PHP不起作用
- 简单的jQuery + PHP不起作用