当我尝试在textarea输入类型中断行时,模态确认。
我也添加了这些,但没有任何反应: allowEnterKey:false, focusConfirm:false,
有人为我的问题提出建议吗?
检查代码:
https://jsfiddle.net/piman/f28tn8hq/24/
$('.table button').on('click', function () {
var replycontent = jQuery("#replyid-7 #reply-content").text();
swal({
title: 'my Title',
type: 'question',
input: 'textarea',
inputValue: replycontent,
showCancelButton: true,
confirmButtonColor: '#3085d6',
cancelButtonColor: '#d33',
confirmButtonText: 'Save',
cancelButtonText: 'Cancel',
allowEnterKey: false,
focusConfirm: false,
inputValidator: function (value) {
return new Promise(function (resolve, reject) {
if (value) {
resolve()
} else {
reject('Error!')
}
})
}
}
).catch(swal.noop)
});

<link href="https://limonte.github.io/sweetalert2/assets/example.css" rel="stylesheet"/>
<script src="https://limonte.github.io/sweetalert2/dist/sweetalert2.all.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="table-responsive">
<table class="table">
<tbody>
<tr id="replyid-7">
<td>
<p id="reply-content">Any Text here <br>
New line Test</p>
<hr>
<div class="author-info">by Admin</div>
<button>EDIT Content</button>
</td>
</tr>
</tbody>
</table>
</div>
&#13;
答案 0 :(得分:1)
使用以下控件。但是有一个错误,按下回车后,光标将转到textarea的末尾。
$('body').on('keydown','textarea', function(e) {
if(e.which === 13){
e.preventDefault();
var value = e.target.value;
var start = e.target.selectionStart;
var end = e.target.selectionEnd;
if(start === end){
value = value.substring(0, start) + "\n" + value.substring(start, value.length);
}else{
value = value.substring(0, start) + "\n" + value.substring(end, value.length);
}
//TODO - set curser position to (start + 1)
e.target.value = value;
}
return e.which !== 13;
});
这是jsfiddle链接:https://jsfiddle.net/rosfc6r2/
答案 1 :(得分:1)
我已经更新到上一个版本。它已经修复了!
答案 2 :(得分:0)
尝试使用以下功能解决此问题。
$('#id').on('keyup keypress', function(e) {
var keyCode = e.keyCode || e.which;
if (keyCode === 13) { // enter key
e.preventDefault();
return false;
}
})
在现代浏览器上,您还可以使用&#39; e.which&#39;:
$('#id').on('keypress', function(e) {
return e.which !== 13;
});
希望这会帮助你。