我用JavaScript创建了一个函数来添加页面中的其他字段,但是当我点击应触发事件的按钮时,没有任何事情发生。此外,我没有看到Fire-bug
的任何错误<!--add other charge fields button-->
<div class="form-group" id="newf">
<button type="button" class="btn btn-default" name="new" onclick="addField()">
<?php echo $lang['add-field-button']; ?>
</button>
</div>
JavaScript函数位于同一页面中:
<!-- script to add more fields -->
<script type="text/javascript">
function addField() {
var field =
'<fieldset>'+
'<legend><?php echo $lang['addmonth-add-charge'] ?></legend>'+
'<div class="form-group">'+
'<label for="charge"><?php echo $lang['charge-formlabel']; ?></label>'+
'<input type="text" id="charge" placeholder="<?php echo $lang['placeholder-addcharge']; ?>" class="form-control" name="charge[]">'+
'<p class="help-block"><?php echo $lang['charge-form-description']; ?></p>'+
'</div>'+
'<!--/end charge-->'+
'<div class="form-group">'+
'<label for="description"><?php echo $lang['description-formlabel']; ?></label>'+
'<textarea class="form-control" rows="5" id="description" name="description[]" placeholder="<?php echo $lang['placeholder-adddescription']; ?>" ></textarea>'+
'<label class="control-label" for="description"><?php echo $lang['description-formlabel']; ?></label>'+
'<div class="controls">'+
'<textarea class="span8" rows="5" id="description" name="description[]" placeholder="<?php echo $lang['placeholder-adddescription']; ?>" ></textarea>'+
'</div>'+
'<!--/end description-->'+
'<div class="form-group input-group">'+
'<label for="value"><?php echo $lang['value-formlabel']; ?></label>'+
'<span class="input-group-addon">$</span>'+
'<input type="text" id="value" placeholder="<?php echo $lang['placeholder-addvalue']; ?>" class="form-control" name="value[]"/>'+
'</div>'+
'<!--/end value-->'+
'</fieldset>';
$("#newf").before(field);
}
</script>
答案 0 :(得分:1)
谢谢你现在有效,问题是jQuery我把它包含在脚本之后 谢谢大家
答案 1 :(得分:-1)
在每个撇号之前需要反斜杠,以免关闭字符串:
<!-- script to add more fields -->
<script type="text/javascript">
function addField() {
var field =
'<fieldset>'+
'<legend><?php echo $lang[\'addmonth-add-charge\'] ?></legend>'+
'<div class="form-group">'+
'<label for="charge"><?php echo $lang[\'charge-formlabel\']; ?></label>'+
'<input type="text" id="charge" placeholder="<?php echo $lang[\'placeholder-addcharge\']; ?>" class="form-control" name="charge[]">'+
'<p class="help-block"><?php echo $lang[\'charge-form-description\']; ?></p>'+
'</div>'+
'<!--/end charge-->'+
'<div class="form-group">'+
'<label for="description"><?php echo $lang[\'description-formlabel\']; ?></label>'+
'<textarea class="form-control" rows="5" id="description" name="description[]" placeholder="<?php echo $lang[\'placeholder-adddescription\']; ?>" ></textarea>'+
'<label class="control-label" for="description"><?php echo $lang[\'description-formlabel\']; ?></label>'+
'<div class="controls">'+
'<textarea class="span8" rows="5" id="description" name="description[]" placeholder="<?php echo $lang[\'placeholder-adddescription\']; ?>" ></textarea>'+
'</div>'+
'<!--/end description-->'+
'<div class="form-group input-group">'+
'<label for="value"><?php echo $lang[\'value-formlabel\']; ?></label>'+
'<span class="input-group-addon">$</span>'+
'<input type="text" id="value" placeholder="<?php echo $lang[\'placeholder-addvalue\']; ?>" class="form-control" name="value[]"/>'+
'</div>'+
'<!--/end value-->'+
'</fieldset>';
$("#newf").before(field);
}
</script>
答案 2 :(得分:-1)
Javascript将在您的onclick之前中断。 因为你混合了一些Jquery代码。 简而言之,您的问题在其他地方
检查webbrowser的调试器(cmd + alt + i on ffow&amp; chrome)