php - Javascript document.getElementById 连接

标签 php javascript ajax

我正在努力处理一些 JavaScript 代码,我在页​​面中使用了无数次这些代码,只是边做边调整。我遇到的问题是连接部分表单元素 id 和页面其他地方定义的字符串变量,以使我的 ajax 调用动态化。 我正在使用以下代码,当元素被硬编码如下时,它可以完美工作(仅适用于编码的项目,而不是动态的,因此在测试后效果不佳)

<script type="text/javascript">
function edttodo(str)
{
if (str=="")
{
document.getElementById("todoitemwr").innerHTML="";
return;
} 
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("todoitemwr(2)").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","todo/edt_todo.php?q="+str,true);
xmlhttp.send();
}
</script>

所以你明白我对代码的动态方面的需求是什么,我进行了一个 mysql 查询,如下所示:

<?php 
            //Get Current To-Do Items

            //select database
            mysql_select_db("jbsrint", $con);
            //query users_dash_user
            $result1 = mysql_query("SELECT * FROM todo WHERE todo_user_id_fk= '".$_SESSION['user_id']."' AND todo_item_status='1'");

            while($row1 = mysql_fetch_array($result1))
            {                               
            echo"<div class=\"todoitemwr\" name=\"todoitemwr(". $row1['todo_id'] .")\" ID=\"todoitemwr(". $row1['todo_id'] .")\"><span class=\"todoitem\">" . $row1['todo_item'] . "</span><span class=\"rmv\" onclick=\"rmvtodo(". $row1['todo_id'] .")\" onmouseover=\"className='rmvon';\" onmouseout=\"className='rmv';\">X</span><img src=\"images/edit.png\" class=\"edt\" onclick=\"edttodo(". $row1['todo_id'] .")\"></img></div>";
            }
            ?>
            </div>

正如您所看到的,div id 是根据已检索到的信息的 id 动态命名的。我上面的 ajax 代码的用途是能够编辑就地检索的文本,一旦更正/更改,就可以重新提交并更新该记录。

我确信这只是理解 JavaScript 如何要求我在 document.getElementById("todoitemwr(2)") 部分中组合文本和 str 值的一个例子。

像往常一样,我们非常感谢任何帮助。

艾伦。

最佳答案

不要使用 id="todoitemwr(2)",而是编写 id="todoitemwr_2"

这是因为 ID 属性中不允许使用大括号。

代码将变成:

document.getElementById('todoitemwr(' + str + ')')

关于php - Javascript document.getElementById 连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10616732/

相关文章:

javascript - 在 Laravel Form Open 中使用 Jquery Confirm?

php - 在 Symfony config env() helper 中使用解析操作符

javascript - 即使在使用 Object.assign 时,Redux 初始状态也会发生变化

javascript - Jquery:如果变量等于其他变量则附加 li

java - 使用 HtmlUnit 调用 Ajax

php - 受密码保护的相册 PHP/MySQL 服务器负载

php - Codeigniter - 提交后验证失败时重新填充表单

php - 在 php 中更新查询 sql 后更新表单值

javascript - 使用代码镜像时在警报中显示文本区域内容

javascript - 使用 jquery/ajax 加载外部页面 - 也加载外部页面的 jquery 脚本