按钮单击以打开拼写检查

时间:2016-06-23 10:07:47

标签: javascript jquery html textarea spell-checking

我有一个spellcheck = "false"的textarea。我希望有一个按钮,当点击时打开spellcheck并检查已输入内容的拼写。
目前,如果在单击按钮后在文本框中输入任何其他内容,则会正确检查拼写。但是,我希望它能拼写检查已经存在的内容而无需在textarea中输入任何其他内容。

<textarea id="ta" spellcheck="false"></textarea>
<div>
   <input type="button" id="spell_btn" value="spell check">
</div>
$(document).on('click', '#spell_btn', null, function () {
    $("#ta").attr("spellcheck", "true");
});//close .click

https://jsfiddle.net/906dqtn6/5/

我尝试使用$('#ta').val()重置值但是 没有任何影响。

var x = $("#ta").val();
var y = " ";
$("#ta").val(y);
$("#ta").val(x);

提前致谢。

2 个答案:

答案 0 :(得分:0)

您的HTML属性应该是spellcheck而不是spellcheckerw3schools),jQuery应该是:

$("#spell_btn").on('click', function () {
    $("#ta").attr("spellcheck", "true");
});

一个想法是,您可以在按钮点击元素时触发keypresskeydown事件。
因为spellcheck似乎只在您输入时有效(或者当元素处于焦点时,单击按钮spellcheck可能会变为非活动状态。要触发这些事件:

$("button").on("click",function() {
    $('#ta').keydown();
    $('#ta').keypress();
    $('#ta').keyup();
    $('#ta').blur();
});

请参阅here以获取参考

答案 1 :(得分:-2)

这是一个用于拼写检查的免费开源Javascript库,我发表了这篇文章:

https://github.com/LPology/Javascript-PHP-Spell-Checker

顶部有现场演示的链接。它设计为在桌面文字处理器中具有拼写检查功能。我在对这些相同选项不满意后写了它。

要使用,只需将JS和CSS文件包含到您的页面中,然后添加:

var checker = new sc.SpellChecker(
    button: 'spellcheck_button', // opens the spell checker when clicked
    textInput: 'text_box', // HTML field containing the text to spell check
    action: '/spellcheck.php' // URL of the server side script 
);