如何使用 ajax、javascript 和 php 更改多个表单元素
我正在使用ajax和javascript根据选择选项更改表单元素,但我无法仅更改一个文本字段,虽然我想更改多个字段,例如产品上的选择,但我想更改其成本和库存价值。 这是我的文件 -----------ajax文件--------------
function loadXML(str)
{
if (str=="")
{
document.getElementById("mygDiv").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("myDiv").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","price.php?q="+str,true);
xmlhttp.send();
}
-----------php文件---------- ----
<?php
include("connection.php");
@$m_id = $_GET['q'];
$btn = mysql_query("select distinct batch_no from purchase_info where medicine_id ='$m_id' order by batch_no")or die(mysql_error());
echo "<select name='batchno' >";
if(mysql_num_rows($btn))
{
while($rows = mysql_fetch_array($btn))
{
?>
<option value="<?php echo $rows['batch_no'] ?>"><?php echo $rows['batch_no'] ?></option> <
<?php
}
}?>
</select>
i am using ajax and javascript to change form element based on select option but i cant change only one text field, While i want to change multiple field e.g. selection on product i want to change its cost and stock value.
here are my files
-----------ajax file--------------
function loadXML(str)
{
if (str=="")
{
document.getElementById("mygDiv").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("myDiv").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","price.php?q="+str,true);
xmlhttp.send();
}
-----------php file--------------
<?php
include("connection.php");
@$m_id = $_GET['q'];
$btn = mysql_query("select distinct batch_no from purchase_info where medicine_id ='$m_id' order by batch_no")or die(mysql_error());
echo "<select name='batchno' >";
if(mysql_num_rows($btn))
{
while($rows = mysql_fetch_array($btn))
{
?>
<option value="<?php echo $rows['batch_no'] ?>"><?php echo $rows['batch_no'] ?></option> <
<?php
}
}?>
</select>
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可以使用 XML 格式进行 ajax 调用。使用 PHP,输出 XML 文件而不是 HTML。
如果您不知道我在说什么,这可能会有所帮助。
http://www.v7n.com /forums/coding-forum/45263-create-xml-file-using-php.html
然后,在 JavaScript 中,使用 xmlHttp.responseXML 而不是 responseHTML。
您将获得一个可以解析的 JavaScript 中的 XML DOM 结构。
如果您不知道如何在 JavaScript 中解析 XML 文档,这会很有帮助。
http://www.adobepress.com/articles/article.asp ?p=425820&seqNum=7
要点是您可以使用不同的 XML 节点来表示不同的事物。例如,您可以
在 Javascript 中拥有一个节点,您可以读取该节点的文本 (25) 并在页面上对其执行某些操作 - 例如将某些输入字段的值设置为 25。
You can use XML format for ajax calls. Using PHP, output XML file instead of HTML.
This can be helpful If you don't know what I'm talking about.
http://www.v7n.com/forums/coding-forum/45263-create-xml-file-using-php.html
Then , in JavaScript, use xmlHttp.responseXML instead of responseHTML.
You will get an XML DOM structure in JavaScript that you can parse.
This can be helpful if you do not know how to parse XML document in JavaScript.
http://www.adobepress.com/articles/article.asp?p=425820&seqNum=7
The point is that you can have different XML nodes that represent different things. For example you could have a node
In Javascript, you read this node's text (25) and do something with it on the page - for example set value of some input field to 25.