1

好的,基本上我有一个 php 页面,我们将调用 form.php。此页面包含一个带有日期选择器、时间选择器和文本框的表单(输入类型=“日期”输入类型=“时间”输入类型=“文本区域”)。当用户提交表单时,信息被发送到mysql数据库,并在下一页“display.php”中输出。

所有这一切都很好。display.php 页面由 form.php 中的代码组成,即。<h1>This is the header</h1> <h2 class="date">$date</h2> <h3 class="time">$time</h3> <p class="message">$message</p>

display.php 中的输出是


这是一个标题
2012-04-23
00:59
我的消息
是一个按钮(只是为了检查我目前的工作)


我正在尝试像这样使用jquery

$(document).ready(function(){ 
$('button').mousedown(function(){ 

if ($('h3').text() == "00:59") {
alert("Yup"); return true;}
 else { alert("Nope");return false;};
});
 });

这将无法匹配时间、日期或消息。如果我运行完全相同的代码但搜索不是用变量创建的 h1,那将起作用,即。

 $(document).ready(function(){ 
$('button').mousedown(function(){ 

if ($('h1').text() == "This is a header") {
alert("Yup"); return true;}
 else { alert("Nope");return false;};
});
 });

我无法弄清楚我在这里缺少什么。

我什至可以将 h1 更改为 00:59,运行 jquery 搜索 h1 == "00:59",它将返回 true 并通过警报。

当我跟踪从 php 变量($time、$date、$message)创建的 h2、h3 和 p 元素时

任何帮助将非常感激。

4

2 回答 2

0

您是否检查过创建的 h3 不包含任何编码或隐藏字符?这可能会导致您的检查失败,因为您检查的是您看到的文本,而不是标签中的实际文本。不要认为您使用的任何字符通常都经过编码,但值得一看。

在jsfiddle中运行您的代码,因为它实际上包含正确的文本,它可以正常工作。因此,您检查的内容与标签中的实际内容之间一定存在某种不匹配。

代码测试

HTML

<h1>This is the header</h1> <h2 class="date">2012-04-23</h2> <h3 class="time">00:59</h3> <p class="message">My message</p>
<button>Test</button>

Javascript

$(document).ready(function(){ 
$('button').mousedown(function(){ 

if ($('h3').text() == "00:59") {
alert("Yup"); return true;}
 else { alert("Nope");return false;};
});
 });
于 2013-05-24T06:43:42.240 回答
0

尝试<p>正确关闭元素:

<h1>This is the header</h1>
<h2 class="date">$date</h2>
<h3 class="time">$time</h3>
<p class="message">$message</p>
于 2013-05-24T06:31:25.487 回答