JavaScript表单属性null错误

JavaScript form attribute null error

本文关键字:错误 null 属性 表单 JavaScript      更新时间:2023-09-26

我有一个java脚本代码,它将在表单中设置一些值

function editCategory(categoryId)   {
$.ajax({
    type: "POST",
    url: "/product/fetchEditCategory",
    data: "categoryId=" + categoryId,
    success: function(response){
        var productManagerForm = document.getElementById('productManager');
        productManagerForm.ceName.value = response.catName;........

我的JSP是-

    <form id="productManager" name="productManager" action="/product/" method="post">
    <div id="editCategory">
        <tr>
                <td style="font-weight:bold;">Category Name</td>
                <td><input type="text" id="ceName" /></td>              
            </tr>   
</div>      
<td><a href="#editCategory" id="cat"  onclick="editCategory('p1')">edit</a></td>

我在运行此代码时遇到以下错误-

Message: 'ceName' is null or not an object

有人能告诉我这里出了什么问题吗?

ceName不能作为productManagerForm的属性访问。

试试这个:

var ceName = document.getElementById('ceName');
ceName.value = response.catName;........

您必须尝试以下操作:

var productManagerForm = document.getElementById('productManager');
var ceName = productManagerForm.getElementById('ceName');
ceName.value = response.catName;

不确定你想用这个函数实现什么,但

 var productManagerForm = document.getElementById('productManager');

返回一个节点Element。ceName是此元素的子元素。不是此元素的属性。您可以使用直接获取元素

var ceName = document.getElementById("ceName");

或者沿着节点树往下走,直到找到这个。。。考虑到ceName是ID,直接使用getElementById()获取它要快得多。

希望这能有所帮助!

相关文章: