gpt4 book ai didi

javascript - 验证后 jQuery 拒绝发布

转载 作者:太空宇宙 更新时间:2023-11-04 03:11:17 26 4
gpt4 key购买 nike

我在 jQuery 代码中添加了一些验证,以在发布消息之前检查空白文本字段,但它似乎不起作用。我的墙上根本没有发布任何消息。知道如何解决这个问题吗?

HTML

<div id="header">
<div class="container"> <span id="text_header">Virtual Idea Wall</span> </div>
</div>
<div id="main">
<div class="container">
<div id="chat"></div>
</div>
</div>
<div id="footer">
<div class="container">
<p>
<label for="title">Please give your idea a title</label>
<br />
<input type="text" id="title" name="title"/>
</p>
<p>
<label for="message">Please provide details of your idea</label>
<br>
<input type="text" id="message" name="message"/>
</p>
<p>
<input type="submit" id="sendmessage">
</p>
</input>
</div>
</div>

jQuery

jQuery(function ($) {
var socket = io.connect();
var $messageForm = $('#sendmessage');
var $messageTitle = $('#title');
var $messageBox = $('#message');
var $chat = $('#chat');

$messageForm.click(function () {
if ($.trim($("#title").val()).length === 0) {
alert('You must provide valid input');
$messageTitle.val('');
$messageBox.val('');
return false;
}
if ($.trim($("#message").val()).length === 0) {
alert('You must provide valid input');
$messageTitle.val('');
$messageBox.val('');
return false;
} else {
e.preventDefault();
socket.emit('send message', '<b>' + $messageTitle.val() + '</b>' + '&nbsp;-&nbsp;' + $messageBox.val());
$messageTitle.val('');
$messageBox.val('');
}

socket.on('new message', function (data) {
$chat.prepend(data + "<br/>");
});
});
});

最佳答案

您的点击函数未传入事件“e”,因此当您调用“e.preventDefault()”时,该函数将停止工作。

我制作了这个 jsfiddle - 没有套接字支持 - 但它确实提醒了我的消息。 http://jsfiddle.net/4v2QT/

这是唯一的更改(e 传递到函数中)

$messageForm.click(function (e) {
... code goes here!
}

关于javascript - 验证后 jQuery 拒绝发布,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17820772/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com