javascript - 如何将输入的 id 和值都传递给 HTML 中的 JS 函数?
问题描述
我努力解决这个问题,但我不是 JS 程序员,所以我还没有成功。我需要在我的 HTML 中编写正确的代码来将输入的 id 和值传递给 JS 函数。这是我的 JS 代码:
<script>
function live_update(id,str) {
if (str.length==0) {
document.getElementById("live_update").innerHTML="";
document.getElementById("live_update").style.border="0px";
document.getElementById("live_update").style.display="none";
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 (this.readyState==4 && this.status==200) {
document.getElementById("live_update").innerHTML=this.responseText;
document.getElementById("live_update").style.class="bg-light";
document.getElementById("live_update").style.display="block";
}
}
xmlhttp.open("GET","profiles.php?act=live_update&u_key={u_key}&id="+id+"&q="+str,true);
xmlhttp.send();
}
</script>
这是我的 HTML 代码
<input type="text" onfocusout="live_update(document.getElementById('{id}').value,document.getElementById('quantity').value)" name="quantity[]" id="9" value="{quantity}" class="sm-input-40"/>
解决方案
查看您的代码后,我看到您使用{id}
. 我不知道那是什么,但有一种不同的方法。代替{id}
,实际上代替整个document.getElementById
,您可以只传入this
,这将被视为代码正在调用的元素的元素。另外,我在这里看到你犯了一个小错误。
document.getElementById("live_update").innerHTML=this.responseText;
document.getElementById("live_update").style.class="bg-light"; // Here
document.getElementById("live_update").style.display="block";
你不能用风格改变班级。你必须使用classList
. 将其更改为: document.getElementById("live_update").classList.add("bg-light");
希望我能帮助你解决你的问题:)
推荐阅读
- javascript - Chrome 扩展阻止特定模式的 url
- ios - 按需资源如何“离开捆绑包”并到达苹果服务器?
- python - 堆栈溢出时按标签抓取网页
- pdf - 编织到 pdf 时出现 YAML 问题
- python-3.x - 如何将几个 2x2 矩阵合并为一个已经存在的矩阵?
- c# - 两个 SQL 传输之间的 NServiceBus 路由器失败
- python - 如何使用 jupyter notebook 批量生成报告?
- wordpress - 如何修复“页面上有多个相同类型的块,在编辑()上共享数据”?
- go - 配置 rclone 以支持 diffie-hellman-group-exchange-sha256 diffie-hellman-group-exchange-sha1
- android - 我可以像在 Swift 中一样在 Kotlin 中进行扩展吗