Php javascript不返回文本输入的值
我的屏幕上有一个文本输入字段,但当我试图从JS访问该值时,它返回null 下面我附上了一个屏幕截图,您可以看到Chrome存储了值(见左面板),JavaScript无法获取值(底部面板),而底部面板的上半部分您可以看到html代码 现在我也不确定这是否有帮助,但是字段是使用PHP动态创建的,并且脚本注册在html文档的顶部。在我的HTML页面上,只有一个字段具有该名称 完整HTML代码Php javascript不返回文本输入的值,php,javascript,Php,Javascript,我的屏幕上有一个文本输入字段,但当我试图从JS访问该值时,它返回null 下面我附上了一个屏幕截图,您可以看到Chrome存储了值(见左面板),JavaScript无法获取值(底部面板),而底部面板的上半部分您可以看到html代码 现在我也不确定这是否有帮助,但是字段是使用PHP动态创建的,并且脚本注册在html文档的顶部。在我的HTML页面上,只有一个字段具有该名称 完整HTML代码 <body> <link href="Objects.css" rel="styleshee
<body>
<link href="Objects.css" rel="stylesheet" type="text/css">
<script src="eFarmClicks.js"></script>
<div class="ContentPanel"><label class="HeadingLabel">ADD GROUP</label>
<table>
<tbody>
<tr>
<td><label>GROUP NAME</label></td>
<td><input type="text" name="edtGroupName"></td>
</tr>
<tr>
<td><label>MAX ANIMALS</label></td>
<td><input type="text" name="edtMaxAnimal"></td>
</tr>
<tr>
<td><label>MAX MALE ANIMALS</label></td>
<td><input type="text" name="edtMaxMAnimal"></td>
</tr>
<tr>
<td><label>MAX FEMALE ANIMALS</label></td>
<td><input type="text" name="edtMaxFAnimal"></td>
</tr>
</tbody>
</table>
<input type="submit" name="btnSubmitAddGroup" value="Add Group" onclick="btnSubmitAddGroup_click()" ;="" onmousemove="mousemove(this)" onmouseout="mouseout(this)" style="background-color: green;">
</div>
</body>
**鼠标移动功能**
function mousemove(obj){
if(document.getElementsByName(obj.name).item(0).style.backgroundColor!="blue")
{document.getElementsByName(obj.name).item(0).style.backgroundColor="Green";};
};
function mouseout(obj){
if(document.getElementsByName(obj.name).item(0).style.backgroundColor!="blue"){
document.getElementsByName(obj.name).item(0).style.backgroundColor="transparent";
};
};
****编辑今天的第四集**
(也在我的评论中)
伙计们,这对我的代码有什么影响?我刚刚意识到,提到编辑在iframe中可能是相关的。当我查看此命令文档时,我意识到这可能与此相关。getElementsByTagName('input')好的,我发现了问题,我要感谢并帮助我找到了答案 好吧,这就是真正的问题:
- iframe是动态创建的
- 输入在iframe中(我起初觉得没有必要在原始问题中说)
- 但是经过进一步的研究和回顾,我发现这就是问题的原因
document.getElementById('content').contentDocument.getElementsByName('edtGroupName').item(0).value
也可以使用链接中提到的方法来解决
对于所有使用js的初学者,这就是代码的作用:
//this gets the i frame of the current page
document.getElementById('content')
// this is the document (or if you will, the page loaded in the iframe)
document.getElementById('content').contentDocument
//this gets my edit on my page of the frame
document.getElementById('content').contentDocument.getElementsByName('edtGroupName')
// and this simply gets the input value
document.getElementById('content').contentDocument.getElementsByName('edtGroupName').item(0).value
请正确格式化您的代码。这次我已经为您格式化了代码,但下次请花点时间将其正确格式化。有关更多帮助,请参阅“对代码粘贴的方式感到抱歉”。它是直接从chrome中复制出来的。不过,你的键盘肯定能用。你的JavaScript在哪里?你也能发布你的脚本吗?@Jacques我看不出你提供的代码有什么问题-你能用复制错误所需的代码来设置一个脚本吗。
//this gets the i frame of the current page
document.getElementById('content')
// this is the document (or if you will, the page loaded in the iframe)
document.getElementById('content').contentDocument
//this gets my edit on my page of the frame
document.getElementById('content').contentDocument.getElementsByName('edtGroupName')
// and this simply gets the input value
document.getElementById('content').contentDocument.getElementsByName('edtGroupName').item(0).value