Javascript JS onclick和jQuery之间的差异。单击
我尝试了两种不同的方法来调用onclick函数。 像这样:Javascript JS onclick和jQuery之间的差异。单击,javascript,jquery,regex,Javascript,Jquery,Regex,我尝试了两种不同的方法来调用onclick函数。 像这样: <input type="button" value="G" id="gras"></input> <input type="button" value="I" onclick="insertTag('<italique>', '</italique>', 'textarea')" /> $("#gras").on("click", funct
<input type="button" value="G" id="gras"></input>
<input type="button" value="I" onclick="insertTag('<italique>', '</italique>', 'textarea')" />
$("#gras").on("click", function() {
insertTag("<gras>", "</gras>", "textarea"); });
只有第一个有效。
这是我的regexp:
field = field.replace(/&/g, '&');
field = field.replace(/</g, '<').replace(/>/g, '>');
field = field.replace(/\n/g, '<br />').replace(/\t/g, ' ');
field = field.replace(/<gras>([\s\S]*?)<\/gras>/g, '<strong>$1</strong>');
field = field.replace(/<italique>([\s\S]*?)<\/italique>/g, '<em>$1</em>');
field=field.replace(/&/g,&;);
field=field.replace(//g',);
字段=字段。替换(/\n/g,“
”)。替换(/\t/g,”);
field=field.replace(/gras([\s\s]*?)\/gras/g,$1);
field=field.replace(/italique([\s\s]*?)\/italique/g,$1');
谢谢 这里是JS:
$(文档).ready(函数(){
$(“#gras”)。在(“单击”,函数(){
insertTag(“gras,/gras,textarea”);
});
});
函数insertTag(startTag、endTag、textareaId、tagType){
var字段=document.getElementById(textareaId);
var scroll=field.scrollTop;
field.focus();
var startSelection=field.value.substring(0,field.selectionStart);
var currentSelection=field.value.substring(field.selectionStart,field.selectionEnd);
var endSelection=field.value.substring(field.selectionEnd);
field.value=startSelection+startTag+currentSelection+endTag+endSelection;
field.focus();
field.setSelectionRange(startSelection.length+startTag.length,startSelection.length+startTag.length+currentSelection.length);
}
函数预览(textareaId){
var字段=textareaId.value;
字段=字段。替换(/&/g,“&;”);
field=field.replace(//g',);
字段=字段。替换(/\n/g,“
”)。替换(/\t/g,”);
field=field.replace(/gras([\s\s]*?)\/gras/g,$1);
field=field.replace(/italique([\s\s]*?)\/italique/g,$1');
document.getElementById(“previewDiv”).innerHTML=字段;
控制台日志(字段);
}
var区域=document.getElementById(“textarea”);
预览(区域)代码>
所见即所得
DOM可能还没有准备好。将on()
方法包装在$(document).ready()
函数中。这没关系,但仍不起作用:/提供问题中使用的代码。不要在回答中为问题提供额外信息。。。您可以随时自由编辑您的帖子。删除此答案,并将此信息添加到您的问题中。您仅使用1个变量调用insertTag:“gras,/gras,textarea”。这很少见,因为你第一次粘贴的代码显示了其他东西。。。