我希望隐藏的input
字段将网页title
作为其value
。
这是我的testmail.php
代码。
<p>From: <?php echo $_POST['name']; ?></p>
<p>Subject: <?php echo $_POST['subject']; ?></p>
<p>Email: <?php echo $_POST['email']; ?></p>
<p>Phone Number: <?php echo $_POST['phone']; ?></p>
<p style="width:300px;">Message: <?php echo $_POST['message']; ?></p>
这是我的表单代码
<form action="testmail.php" method="post" class="cf">
<label for="name">* Name:</label>
<input type="text" name="name" placeholder="Your Name">
<input type="hidden" name="subject" value="<?php value $_POST['pagetitle']; ?>">
<label for="email">* Email:</label>
<input type="text" name="email" placeholder="Enter a valid Email Address">
<label for="phone"> Phone:</label>
<input type="text" name="phone" placeholder="Enter areacode and number">
<label for="message">* Message:</label>
<textarea name="message"></textarea>
<button type="input">Send</button>
</form>
有没有办法自动获得标题?
答案 0 :(得分:2)
这是使用onsubmit事件的纯JavaScript方式。
<form onsubmit="this.subject.value=document.title;">
<input type="text" name="subject" value="" />
<input type="submit" />
</form>
为了让您更好地了解onsubmit
事件,顾名思义,当用户提交表单时,它会执行包含的javascript。从右到左工作的操作this.subject.value=document.title
基本上表示将document.title
的值分配给元素的value
属性name
subject
this
1}}具体形式。
使用现有的表单,它应该是这样的(我在你的html中添加了onsubmit事件并修复了错误,并添加了适当的id来形成元素):
<form action="testmail.php" method="post" class="cf" onsubmit="this.subject.value=document.title;">
<label for="name">* Name:</label>
<input type="text" id="name" name="name" placeholder="Your Name" />
<input type="hidden" name="subject" value="" />
<label for="email">* Email:</label>
<input type="text" id="email" name="email" placeholder="Enter a valid Email Address" />
<label for="phone"> Phone:</label>
<input type="text" id="phone" name="phone" placeholder="Enter areacode and number" />
<label for="message">* Message:</label>
<textarea id="message" name="message"></textarea>
<input type="submit" name="submit" value="submit" />
</form>
答案 1 :(得分:1)
一旦页面加载完毕,这将设置隐藏的input
字段的值。
<script>
$(function() {
$('input[name="subject"]').val($('title').text());
});
</script>
答案 2 :(得分:0)
您可以使用JavaScript来执行此操作,假设您正在使用jQuery,将submit
事件绑定到表单
$('your_form_selector').on('submit', function(){
$('<input />').attr('type', 'hidden')
.attr('name', 'title')
.attr('value', document.title)
.appendTo($(this));
});