私はテキストボックスを持っています
[〜#〜] html [〜#〜]
_<input type="text" id="lat" placeholder="Latitude" ng-lat value="9°">
_
これは度記号を完全に表示するので問題なく動作しますが、jqueryを使用して値を設定しようとすると
Jquery
$("#lat").val("9°")
度記号の代わりにテキスト全体を表示します。
value
属性をターゲットにできます。
_$("#lat").attr('value',"101"+String.fromCharCode(176))
_
.text()
は要素の値を取得するために使用されるため、テキストを設定するには.val()
を使用することもお勧めします。
$("#test").click(function(){
$("#lat").val("29" + ascii(176))
});
function ascii (a) { return String.fromCharCode(a); }
さらにヘルプが必要なJSFiddleを更新しました: http://jsfiddle.net/zkh2of12/1/
HEXCodeを使用できます。例:
<a href id="my">Here</a>
<script>
$('#my').click(function()
{
alert('9\xB0');
});
</script>
また、これを通過します リンク
HTMLコードではなくJavaScriptでシンボルを直接設定するのはどうですか?
$(function(){
$("#set").click(function(){
$("#lat").val("°");
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" id="lat" placeholder="Latitude" ng-lat value="9°">
<button id="set">set</button>
それらを改善したい場合は、内部に好きなhtmlコードで非表示の<span>
を作成し、JavaScriptでhtmlを選択するだけです。これは、JSに投稿できないシンボルでも機能します
入力フィールドのほかに特別なタグを使用すると、ユーザーにとって明確になります。
<input type="text" id="lat" placeholder="Latitude °" value=""> °
これを試して:
$("#lat").attr("val","9"+ascii(176));