Php javascript不返回文本输入的值

Php javascript不返回文本输入的值,php,javascript,Php,Javascript,我的屏幕上有一个文本输入字段,但当我试图从JS访问该值时,它返回null 下面我附上了一个屏幕截图,您可以看到Chrome存储了值(见左面板),JavaScript无法获取值(底部面板),而底部面板的上半部分您可以看到html代码 现在我也不确定这是否有帮助,但是字段是使用PHP动态创建的,并且脚本注册在html文档的顶部。在我的HTML页面上,只有一个字段具有该名称 完整HTML代码 <body> <link href="Objects.css" rel="styleshee

我的屏幕上有一个文本输入字段,但当我试图从JS访问该值时,它返回null

下面我附上了一个屏幕截图,您可以看到Chrome存储了值(见左面板),JavaScript无法获取值(底部面板),而底部面板的上半部分您可以看到html代码

现在我也不确定这是否有帮助,但是字段是使用PHP动态创建的,并且脚本注册在html文档的顶部。在我的HTML页面上,只有一个字段具有该名称

完整HTML代码

<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中(我起初觉得没有必要在原始问题中说)
  • 但是经过进一步的研究和回顾,我发现这就是问题的原因
我认为这是因为输入在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