我有两个下拉列表,第二个是基于用户在第一个下拉菜单中选择的一个。我打算用Javascript动态更改第二个下拉菜单。但现在问题来了。此信息将存储在用户的个人资料中。理想情况下,我希望能够将这些信息从MySQL数据库中提取出来并显示在PHP页面上。当我从MySQl填充列表时,如何加载正确的动态菜单。我怎样才能以我想要的方式实现这一目标。我不认为javascript会在这种情况下起作用吗?
答案 0 :(得分:1)
如果您不想刷新页面,那么答案就是“JavaScript”。现在,你有几个选择。就个人而言,我更喜欢在前面加载更多,所以我保留了一个JSON对象,它概述了可能性,然后我将静态内容交换为静态内容。
这意味着onchange我会有类似的东西:
var first = document.getElementById( "id of first select" )
var items = possibilities[
first.value // you can also do things with selectedIndex and options if needs.
];
var second = document.getElementById( "id of second select" )
for( var i in items )
{
var opt = document.createElement('option');
opt.setAttribute('value', items[ it ] );
second.appendChild( opt );
}
您的另一个选择是“通过网络”发送数据并通过AJAX使其正常工作。没有足够的教学空间,我想我可以安全地将您链接到this one。
答案 1 :(得分:1)
你当然可以用JavaScript做到这一点。它被称为AJAX。大多数人都会使用像jQuery这样的JavaScript框架来解决使用XMLHTTPRequest对象建立与服务器的连接以及请求/接收数据的一些问题。
你仍然在PHP和MySQL中编写服务器端代码,你只需使用AJAX来调用数据并使用它。