Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/472.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何将元素输入按钮更改为A或Span_Javascript_Input_Textarea - Fatal编程技术网

Javascript 如何将元素输入按钮更改为A或Span

Javascript 如何将元素输入按钮更改为A或Span,javascript,input,textarea,Javascript,Input,Textarea,代码之前 $( 'input[type=button]' ).on('click', function(){ var cursorPos = $('#spotsettings-template-code').prop('selectionStart'); var v = $('#spotsettings-template-code').val(); var textBefore = v.substring(0, curso

代码之前

$( 'input[type=button]' ).on('click', function(){
            var cursorPos = $('#spotsettings-template-code').prop('selectionStart');
            var v = $('#spotsettings-template-code').val();
            var textBefore = v.substring(0,  cursorPos );
            var textAfter  = v.substring( cursorPos, v.length );
            $('#spotsettings-template-code').val( textBefore+ $(this).val() +textAfter );
        });
代码之后:下面的示例

$( 'a' ).on('click', function(){
        var cursorPos = $('#text').prop('selectionStart');
        var v = $('#text').val();
        var textBefore = v.substring(0,  cursorPos );
        var textAfter  = v.substring( cursorPos, v.length );
        $('#text').val( textBefore+ $(this).val() +textAfter );
    });
但不工作,,,其可能将输入[类型=按钮]更改为或

<form>
    <textarea id="text" cols="40" rows="3"> </textarea>
<a>[tag_label]</a> or <span>[tag_label]</span>
</form>

[标签]或[标签]
对不起,英语不好! 当做
Regga从tamplar那里找到了答案

$('span').on('click', function(){
            var cursorPos = $('#text').prop('selectionStart');
            var v = $('#text').text();
            var textBefore = v.substring(0,  cursorPos );
            var textAfter  = v.substring( cursorPos, v.length );
            $('#text').val( textBefore+ $(this).text() +textAfter );
        });

与css选择器指定或条件的方式相同
a,span
逗号表示OR,没有空格表示AND,没有逗号的间距表示嵌套。但是请记住,
a
span
标记没有值。他们有内部文本或内部HTMLC,你能告诉我应该怎么做吗?
$(this)。text()
将获得
a
span
标记的内容,而不是使用
val()
我尝试了你的建议,但它不起作用,你能解释一下我应该更改脚本的内容吗?我非常需要它