我正在开发一款软件,它会从 mysql 数据库中获取信息,并将其动态地放入我们的表单中。不过,我遇到了一些问题。以下是一些功能的简要介绍。
表单加载时,我们有大量选择列表。这些通过带有各种键/值的 php 数组进行填充。当我从一个名为“客户”列表中选择一个选项后,在点击时,我需要检查该客户是否有一个特殊标志(存储在数据库中),并根据该数据更新另一个选择列表。
我理解我的解决方案的核心是需要在点击时触发 JavaScript,而我已经实现了。所调用的函数引用处理数据库查询的 php 页面中的类和其函数。
这个函数与我的php进行通讯。CustomerProvider类已经完全正常工作,我在其他页面上已经充分测试过了。问题出现在当我试图改变选择列表时。
表单加载时,我们有大量选择列表。这些通过带有各种键/值的 php 数组进行填充。当我从一个名为“客户”列表中选择一个选项后,在点击时,我需要检查该客户是否有一个特殊标志(存储在数据库中),并根据该数据更新另一个选择列表。
我理解我的解决方案的核心是需要在点击时触发 JavaScript,而我已经实现了。所调用的函数引用处理数据库查询的 php 页面中的类和其函数。
<script>
function setService()
{ // The customer's "id" grabbed from the aforementioned customer selection list
customer = $('#customer').val();
$.get('thePage.php?key=setService?customer='+customer);
}
</script>
这个函数与我的php进行通讯。CustomerProvider类已经完全正常工作,我在其他页面上已经充分测试过了。问题出现在当我试图改变选择列表时。
<?
if(isset($_GET['key']) && $_GET['key'] == 'setService')
{
$customer = $_GET['customer'];
$customer = intval($customer);
$s = CustomerProvider::getHasContract($customer);
if ($s != '')
{ ?> <script>var element = document.getElementById('ticket_service');
element.value = 'Contracted Hours';</script> <? }
else return;
}
?>
我第一次真正编写JavaScript代码,他们让我参与了这个项目。我知道我的部分没有按照我预期的方式输出HTML。我知道PHP的其他部分和JavaScript的前面部分似乎都在执行。非常感谢任何帮助。
$.get
的结果,而没有将其应用到你的页面上。将服务器输出的代码移到JavaScript的回调函数中,以便进行元素更改。 - cyberbit