3

この状況では、たとえば、$(this).text()0になると、スイッチでは0が「0」に等しくないため、機能しません。

私の割り当てでは、ケースから「」を削除できません。

だから基本的に$(this).text()はどういうわけか文字列にならなければなりません。何か案は?

ありがとう!

...
$( '.xyz' ).click( function()...
  var key = $(this).text();
  switch( key ) {
    case "0":
    case "00":
    case "1":
    case "2":
    case "3":
    case "4":
    case "5":
    case "6":
    case "7":
    case "8":
    case "9":
    ...

https://gist.github.com/188d81480a1503d1985b

4

3 に答える 3

3

数値が欲しいとわかったら?

var key = parseInt($(this).text()); //or
key = parseDouble($(this).text());

編集2:デレクの提案をありがとう。常にそれを忘れてください:

+$(this).text(); //also converts to integer; parseint can be given a radix (base). + if string is already in the form of a base 10 integer

編集:また、あなたのコードは間違っているように見えます。$(this).text())不均衡なparanthesisがあります。text()は常に文字列を返します。それが私が上記の仮定をした理由です。あなたの質問はあなたがtext()の結果で検索したいことを暗示しているようですが?その場合でも、text()が提供する文字列が必要になります。

詳細とコードを教えていただければ、理解しやすくなります。

于 2012-11-16T05:29:11.723 に答える
2

あなたはこれを行うことができます

var key = "" + $(this).text();

これは常に文字列になります。IE

var b = "" + 0 ;
// b = "0"
于 2012-11-16T05:30:02.663 に答える
1

これを試して

var key = String($(this).text());
于 2012-11-17T04:50:19.720 に答える