更改函数上的JavaScript工作不正常
我有一个JavaScript代码,它与HTML选择标记一起工作更改函数上的JavaScript工作不正常,javascript,jquery,html,Javascript,Jquery,Html,我有一个JavaScript代码,它与HTML选择标记一起工作 $(function() { $('#to_name').on('change',function() { if( $(this).val()=="<?php echo $ceo_chunks[0];?> <?php echo $ceo_chunks[1];?> <?php echo $ceo_chunks[2]?>") { $('#to_designation').val
$(function() {
$('#to_name').on('change',function() {
if( $(this).val()=="<?php echo $ceo_chunks[0];?> <?php echo $ceo_chunks[1];?> <?php echo $ceo_chunks[2]?>") {
$('#to_designation').val('<?php echo $ceo_chunks[3];?>');
$('#dear_sir').val('<?php echo $ceo_chunks[0]?> <?php echo $ceo_last_name;?>') ;
if( $(this).val()=="<?php echo $liaison_one_chunks[0];?> <?php echo $liaison_one_chunks[1];?> <?php echo $liaison_one_chunks[2]?>") {
$('#to_designation').val('<?php echo $liaison_one_chunks[3]?>')
$('#dear_sir').val('<?php echo $liaison_one_chunks[0]?> <?php echo $liaison_one_last_name;?>')
$("#liaison_one").show()
$("#dear_liaison_one").show()
} else {
$("#ceo").hide()
$("#liaison_two").hide()
$("#dear_ceo").hide()
$("#dear_liaison_two").hide()
}
if( $(this).val()=="<?php echo $liaison_two_chunks[0];?> <?php echo $liaison_two_chunks[1];?> <?php echo $liaison_two_chunks[2]?>") {
$('#to_designation').val('<?php echo $liaison_two_chunks[3]?>')
$('#dear_sir').val('<?php echo $liaison_two_chunks[0]?> <?php echo $liaison_two_last_name;?>')
$("#liaison_two").show()
$("#dear_liaison_two").show()
} else {
$("#ceo").hide()
$("#liaison_one").hide()
$("#dear_ceo").hide()
$("#dear_liaison_one").hide()
}
};
});
});
$(函数(){
$('#to_name')。on('change',function(){
if($(this).val()==“”){
$('to'u designation').val('');
$('亲爱的先生').val('';
if($(this).val()==“”){
$(“#至#名称”).val(“”)
$('亲爱的先生').val('')
$(“#联络人之一”).show()
$(“亲爱的联络人”).show()
}否则{
$(“#ceo”).hide()
$(“#联络二”).hide()
$(“亲爱的首席执行官”).hide()
$(“#亲爱的#两个”).hide()
}
if($(this).val()==“”){
$(“#至#名称”).val(“”)
$('亲爱的先生').val('')
$(“#联络二”)节目()
美元(“#亲爱的#两位”).show()
}否则{
$(“#ceo”).hide()
$(“#联络人”).hide()
$(“亲爱的首席执行官”).hide()
$(“亲爱的联络人”).hide()
}
};
});
});
下面是html代码
<select name="to_name" id="to_name">
<option value="<?php echo $ceo_chunks[0];?> <?php echo $ceo_chunks[1];?> <?php echo $ceo_chunks[2]?>"><?php echo $ceo_chunks[0];?> <?php echo $ceo_chunks[1];?> <?php echo $ceo_chunks[2]?></option>
<option value="<?php echo $liaison_one_chunks[0];?> <?php echo $liaison_one_chunks[1];?> <?php echo $liaison_one_chunks[2]?>"><?php echo $liaison_one_chunks[0];?> <?php echo $liaison_one_chunks[1];?> <?php echo $liaison_one_chunks[2]?></option>
<option value="<?php echo $liaison_two_chunks[0];?> <?php echo $liaison_two_chunks[1];?> <?php echo $liaison_two_chunks[2]?>"><?php echo $liaison_two_chunks[0];?> <?php echo $liaison_two_chunks[1];?> <?php echo $liaison_two_chunks[2]?></option>
</select>
<br>
<select name="to_designation" id="to_designation">
<option value="<?php echo $ceo_chunks[3]?>" id="ceo"><?php echo $ceo_chunks[3]?></option>
<option value="<?php echo $liaison_one_chunks[3]?>" id="liaison_one"><?php echo $liaison_one_chunks[3]?></option>
<option value="<?php echo $liaison_two_chunks[3]?>"id="liaison_two"><?php echo $liaison_two_chunks[3]?></option>
</select>
<div id="dear_ceo" style="margin-top:10px; width:auto">
<input type="text" name="dear_sir" id="dear_ceo" value="Dear <?php echo $ceo_chunks[0]?> <?php echo $ceo_last_name;
?>"/>
</div>
<div id="dear_liaison_one" style="margin-top:10px; width:auto; display:none">
<input type="text" name="dear_sir" id="dear_liaison_one" value="Dear <?php echo $liaison_one_chunks[0]?> <?php echo $liaison_one_last_name;?>"/>
</div>
<div id="dear_liaison_two" style="margin-top:10px; width:auto; display:none">
<input type="text" name="dear_sir" id="dear_liaison_two" value="Dear <?php echo $liaison_two_chunks[0]?> <?php echo $liaison_two_last_name;?>"/>
</div>
我建议您在行尾使用分号(如果合适)。我知道它们不是强制性的,但把它们看作是一个好的实践。
if子句末尾还有一个分号。它可能不会刹车,只是以防万一
尝试用下划线(\)替换空格
例如:
<?php echo $ceo_chunks[0];?> <?php echo $ceo_chunks[1];?> <?php echo $ceo_chunks[2]?>
将成为
<?php echo $ceo_chunks[0];?>_<?php echo $ceo_chunks[1];?>_<?php echo $ceo_chunks[2]?>
__
并检查您是否能够正确地提醒已更改输入的值。您的第一条if语句明显缺少一个结束括号。
请合上支架。代码中没有逻辑错误
$(function() {
$('#to_name').on('change',function(){
if( $(this).val()=="<?php echo $ceo_chunks[0];?> <?php echo $ceo_chunks[1];?> <?php echo $ceo_chunks[2]?>"){
$('#to_designation').val('<?php echo $ceo_chunks[3];?>')
$('#dear_sir').val('<?php echo $ceo_chunks[0]?> <?php echo $ceo_last_name;?>')
/*$("#ceo").show()
$("#dear_ceo").show()*/
//} ---uncomment this ---
$(函数(){
$('#to_name')。on('change',function(){
if($(this).val()==“”){
$(“#至#名称”).val(“”)
$('亲爱的先生').val('')
/*$(“#ceo”).show()
$(“#尊敬的首席执行官”).show()*/
//}---取消对此的注释---
还包括每次调用函数时的终止分号
if( $(this).val()=="<?php echo $ceo_chunks[0];?> <?php echo $ceo_chunks[1];?> <?php echo $ceo_chunks[2]?>"){
$('#to_designation').val('<?php echo $ceo_chunks[3];?>');
$('#dear_sir').val('<?php echo $ceo_chunks[0]?> <?php echo $ceo_last_name;?>');
}
if($(this).val()==“”){
$('to'u designation').val('');
$('亲爱的先生').val('';
}
你如何为那些PHP值声明javascript变量以使代码更具可读性?如果你像那样将PHP变量打印成javascript,你迟早会后悔的。@TomášZato在编码方面是新手,你能建议我格式化你的javascript代码吗?请参阅我的编辑。这样更容易发现错误。