我有一个javascript函数,可以在选择后显示和隐藏div。div 包含表单的字段。div test2 具有div test1 的字段以及从数据库中获取数据的选择。所有字段均为必填项。
问题:
1)由于php代码,我很难在formgroup2变量中包含我的意思是(test2),选择。
function hide () {
console.log("whatever")
}
function visibilite1(_this) {
var formgroup1 = '<div id="test1" class="divs"><label>Name </label>
<input type="text" name= "name" id= "name" required> </br><label>User
name </label><input type="text" name= "username" id= "username"
required> </br><label >Password <em>*</em></label><input
type="password" name= "password" id= "password" required></br></div>'
var formgroup2 = '<div id="test2" class="divs"><label>Name </label>
<input type="text" name= "name" id= "name" required><label>User name
</label><input type="text" name= "username" id= "username" required>
<label>Password <em>*</em></label><input type="password" name= "password"
id= "password" required><input type="text" name= "username"
id= "username" required><label>Adress<em>*</em></label><input
type="text" name= "adress" id= "adress" required></div>'
var formtestElement = document.getElementById('formtest');
if (_this.value == "test1") {
formtestElement.innerHTML = formgroup1
} else if (_this.value == "test2") {
formtestElement.innerHTML = formgroup2
};
}
</script>
<select name="role" id="role"
onchange="visibilite1(this);hide()" >
<option value='test1'>Year1</option>
<option value='test2'>Year2</option>
</select>
<div id="formtest">
<div id="test1" class="divs">
<label>Name </label>
<input type="text" name="name" id="name" required> </br>
<label>User name </label>
<input type="text" name="username" id="username" required></br>
<label>Password <em>*</em></label>
<input type="password" name="password" id="password" required></br>
</div>
</div>
一切都运行良好,但由于 php 代码,我无法在地址字段后在 formgroup2 变量中包含以下选择标签:
<label>Client name</label>
<?php
$sql="select ClientName from claims_follow_up.Client where id
!='10001' order by ClientName asc ";
$req=mysqli_query($dbc,$sql) or die("Erreur d'execution");
?>
<select name="ClientName" id="ClientName"
onchange="
var maVal = document.getElementById('ClientName').value;
if (maVal == 'Create new client')
{
window.open('newClientCreate.php', 'blank', 'scrollbars=yes,
resizable=no, top=50, left=155, width=1200, height=700');
};activer()" required disabled="true" onkeypress="activerSubmit()">
<option value="">select client </option>
<?php
while($d=mysqli_fetch_array($req))
{
echo'<option
value="'.$d['ClientName'].'">'.$d['ClientName'].'</option>';
}
mysqli_free_result($req);
?>
<option value="Create new client" style="color:blue;
font-weight:bold">create new client</option>
</select>
你的问题不清楚,你的代码也不清楚。我很难理解你试图做什么。
以下是一些提示,可使您的代码更具可读性,并且我们的问题更易于我们理解:
- 构建代码:编码前三思
- 以体面的方式缩进代码
-
使用函数!避免在代码中包含这样的东西:
onchange="var maVal = document.getElementById('ClientName').value;if (maVal == 'Create new client'){ window.open('newClientCreate.php', 'blank', 'scrollbars=yes, resizeable=no, top=50, left=155, width=1200, height=700'); };activer()"
-
使用正确的 id 和类名。很难理解一个div的意图,因为他的ID是"test1"或span class="divs"。那是胡说八道
现在,当你 在这里发帖时,你应该始终指定你要做什么,当你提供源代码时,从你的代码的一部分中说出我们。您向我们提供了 2 个代码示例。我仍然在问自己它们是否都来自同一个"test.php"脚本,或者它们是否是"test1.php"和"test2.php"的一部分。
选择你的话。您的问题是"在javascript函数中插入一个选择标签",法语的意思是"Insérer un select tag DANS une fonction javascript"。像这样"使用 js 函数插入一个选择标签"甚至更好:"使用 javascript 在 htmldiv 中插入选择标签"会更正确
我希望这个答案能帮助你改进你的问题:)我很乐意帮助您解决这个问题。清理你的代码,不要犹豫,发布它!祝你好运瓦赞