gpt4 book ai didi

javascript - Jquery 不允许在文本区域中换行

转载 作者:行者123 更新时间:2023-11-29 22:23:13 25 4
gpt4 key购买 nike

我有一个奇怪的问题。添加对 Jquery 1.7.2 的支持时,我无法向表单中的文本区域添加换行符。当我点击输入时,没有任何反应。

我在jquery里面摆弄了一下源码,发现如果注释掉下面的代码(4845行)

for ( var type in Expr.match ) {
Expr.match[ type ] = new RegExp( Expr.match[ type ].source + (/(?![^\[]*\])(?![^\(]*\))/.source) );
Expr.leftMatch[ type ] = new RegExp( /(^(?:.|\r|\n)*?)/.source + Expr.match[ type ].source.replace(/\\(\d+)/g, fescape) );
}

添加换行符的功能已恢复。我没有看到其他人有这个问题,所以我猜其他事情正在发生。但是,我的问题是:上面代码的目的是什么(我不是很懂 javascript),删除它会带来任何风险吗?我只想删除代码并恢复文本区域的换行能力,但不想在不知不觉中使网站陷入困境。我确实注意到,在执行此操作后,我在 js 控制台中看到错误:

Uncaught TypeError: Cannot call method 'exec' of undefined -- jquery.js:4185

如有任何帮助,我们将不胜感激!


这是一些代码示例。 HTML:

    <form class="form-input" method="post">
<fieldset>
<ol>
<li>
<label for="activity_type_id">Activity Type&nbsp;<em>*</em></label>
<select name="activity_type_id"><option value="17" label="Call">Call</option><option value="23" label="Connectivity Meeting">Connectivity Meeting</option><option value="22" label="Conversation">Conversation</option><option value="16" label="Email (incoming)">Email (incoming)</option><option value="15" label="Email (outgoing)">Email (outgoing)</option><option value="19" label="Implementation Notes">Implementation Notes</option><option value="20" label="Meeting Minutes">Meeting Minutes</option><option value="18" label="Task">Task</option><option value="21" label="Tip / Unusual Attribute">Tip / Unusual Attribute</option></select> </li>
<li>
<label for="summary">Summary&nbsp;<em>*</em></label>
<input size="40" maxlength="80" id="summary" name="summary" value=""/>
</li>
<li>
<label for="details">Details&nbsp;</label>
<textarea class="wide" name="details" id="details" rows="10" columns="80"></textarea>
</li>
</ol>
</fieldset>
<input id="submit" name="addactivity" value="Add Activity" type="submit" />
</form>

以及其他插件未包含的 javascript:

<script>
// Dynamic lookup of C2 companies
$(document).ready(function ()
{
$(window).keydown(function(event)
{
if(event.keyCode == 13)
{
event.preventDefault();
return false;
}
});
$("#search_input").autocomplete(
{
source: function(request,response)
{
$("#loading-search").show();
$("#no-results").hide();
$.getJSON("/services/json/cust_search.php",request,function(data)
{
response(data);
$("#loading-search").hide();
if (data.length == 0)
{
$("#no-results").show();
} else
{
$("#no-results").hide();
}
});
},
minLength: 3,
select: function(event,ui)
{
$("#search_input").hide();
$("#search_input").val(ui.item.value);
$("#search_source").val(ui.item.source);
$("#search-form").submit();
}
});
});
</script>
<script type="text/javascript">
//---------------------------------------------------------------------------
// Hide all the submenus on start. When a non-expanded menu is clicked,
// expand that menu while collapsing the menu above it. If a menu is
// clicked when its expanded, collapse.
//---------------------------------------------------------------------------
$(function()
{
// $("dd:not(:first)").hide();
$("dd").hide();
$("#menu-nexmark").slideDown("fast");
$("dt a").click(function()
{
var curr_dd = $(this).parent().next();
if (curr_dd.css("display") != "none")
{
$("dd:visible").slideUp("medium");
return;
}
$("dd:visible").slideUp("slow");
curr_dd.slideDown("slow");
return false;
});
});
</script>

最佳答案

问题是这段代码:

$(window).keydown(function(event)
{
if(event.keyCode == 13)
{
event.preventDefault();
return false;
}
});

将其设置为仅引用它受影响的 div(我们希望禁用单击输入功能的自动完成搜索菜单),恢复其他地方的换行功能:

$("#somediv").keydown(function(event)
{
if(event.keyCode == 13)
{
event.preventDefault();
return false;
}
});

关于javascript - Jquery 不允许在文本区域中换行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11019479/

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