我希望有能够根据HTML/PHP变量的逻辑自动选择"无线电"按钮. 示例以下显示: JavaScript :
- function autoForm(value)
- {
- var myForm = document.forms["search"];
-
- if (value == '1')
- myForm.elements["category"][0].checked = true;
- if (value == '0')
- myForm.elements["category"][1].checked = true;
- }
- <body onload = "autoForm('1')">
html: [html] 类别1 类别2 $ value ='1'; / *用1或0 */ ?> [/html] 问题: 如果我将值作为常数传递,它将如下一个行代码中所示工作, 或者 如果我从php中将值传递为变量,它根本不起作用, 我如何将变量的值从HTML/PHP传递到Java脚本中? 感谢您的见识..
# 回答1 你好 ... 欢迎来到TSDN ... 您必须在Onload中使用单个引号,或者当您确定$ value始终是一个数字和$ value时必须打印到HTML页面时(必须在发送给客户端之前处理):
- <body onload = "autoForm($value);">
-
亲切的问候
# 回答2 感谢您的回复. 我尝试使用它在on Load中使用单个引号,或者根本没有引号. 两者都不会使JavaScript看到on Load尝试传递的值. 但是,在代码的html/php部分中,如果我这样做 回声" RRI值为:".$ rri."; 在HTML页面上,它将显示 RRI值是:1 仍然伸展我的头发: - ((((( 谢谢
# 回答3 - <body onload = "autoForm('<?php echo $value; ?>')">
问候 JX2
# 回答4 我尝试了以下三个变体,没有一个能够将值传递给JavaScript :
- <body onload = "autoForm('<?php echo $value; ?>')">
- <body onload = "autoForm(<?php echo $value; ?>)">
- <body onload = "autoForm(<?php echo "$value"; ?>)">
-
但是,在HTML中,此代码
- <?php
- echo "the value is $value</b><br />";
- ?>
将显示 值是1 任何建议都受到欢迎. 谢谢
# 回答5 你好 ... 正如我所说的...它必须打印到HTML;)...(甚至回荡::)) 好的...在将其打印到Onload-unction之前,$ value是初始化的,并用一个值初始化? ...在Firefox中尝试一下,看看JS-Console ...里面有错误吗? 亲切的问候
# 回答6 这是我的测试脚本/html: [html] 配置测试 功能自动型(value){ var myform = document.forms [" this form"]; if(value =='1') myForm.Category [0] .checked = true; if(value =='0') myForm.Category [1] .checked = true; } ')"> $ value ='1'; 回声" $ value"; ?> 选择选择: 使能够:: 禁用:: [/html] 在执行表格之后,这是页面显示: 1 选择选择: 使能够:: 禁用:: 在执行表单之后,这是Firebug表单源代码显示的一部分: [html] [/html] 换句话说,$ value的" 1"在这里无法替代,为什么? 我不明白. 例如,没有php的源代码, 这将起作用,因为它将在Firebug中显示完全相同. 但是,对于源代码为: ,它无法正常工作,因为它将在firebug中显示同样的东西. 它将$值视为字符串char. 我想念一些可怕的东西吗? 仍然学习如何从Firebug进行调试! 我正在使用Firefox,据我所知,Firebug控制台没有错误. 非常感谢您的帮助,
# 回答7 发布代码时,请使用代码标签. 谢谢! 我认为您之后要设置$值. 在身体标签之前将其移至.
# 回答8 是的,你是hittin G右上是指甲...在标签之前移动$值部分后,一切都很好. 可能是我对此很天真,我认为始终必须位于HTML的顶部,并且在加载表格后将执行为HTML代码的最后一部分? ,显然我错了. 关于" Onload"如何工作的任何指针? 感谢大家的巨大帮助和智慧.
# 回答9 是的,Onload将在页面加载上运行,但这是JavaScript. PHP将在页面加载时运行. 实际上,正在发生的事情是,您只是生成将传递到JavaScript的哪些参数,以获取将在页面加载上运行的函数.
# 回答10 这就是让我逻辑上的原因. 如果" Onload"是JavaScript的一部分,而PHP为其生成了参数,那么它们是两个单独的部分,而代码行的实际顺序不重要,对吗? 因此,似乎这种" on Load"倾向于在HTML表单的开头执行,而不是在"重新加载"末尾执行. 假设,如果我在后面的"单位"按钮上预设了HTML"无线电按钮"预设,然后" onload"使用"未选中"调用JavaScript以通过逻辑来重置它,那么该表单将显示什么? 如果首先执行" Onload",则Botton将被"检查", 如果" Onload"执行最后执行,则Botton将被"未选中". 再次感谢您的周到的见解.