我创建了一个联系表单,其中包含“输入您的消息”字样作为评论区域的默认值。我的代码有效,但是有问题。
我的问题是,如果向用户发出错误消息,告知他们没有登录,则会生成两次“输入您的消息”文本。您可以访问http://themeforward.com/demo2/features/contact-form/,而不是填写您的信息,然后点击“向我发送电子邮件”,以查看此操作。我不确定我必须做什么不同的默认文本只能在
时生成一次我的textarea HTML:
<textarea name="comments" id="commentsText" rows="20" cols="30" class="requiredField" onfocus="if(this.value==this.defaultValue)this.value=''" onblur="if(this.value=='')this.value=this.defaultValue">
Enter your message
<?php if(isset($_POST['comments'])) { if(function_exists('stripslashes')) { echo stripslashes($_POST['comments']); } else { echo $_POST['comments']; } } ?>
答案 0 :(得分:1)
这应该可以解决问题:
<textarea name="comments" id="commentsText" rows="20" cols="30" class="requiredField" onfocus="if(this.value==this.defaultValue)this.value=''" onblur="if(this.value=='')this.value=this.defaultValue">
<?php
if(isset($_POST['comments'])) {
if(function_exists('stripslashes')) {
echo stripslashes($_POST['comments']);
}
else {
echo $_POST['comments'];
}
}
else {
echo 'Enter your message';
}
?>
答案 1 :(得分:1)
在引用textareas时,您应该在Javascript中使用innerHTML
代替value
。