Преобразуйте NSString в NSDictionary

Используйте селектор атрибутов [], например [for='+ this.id +'], где this.id - это ID из focus изданного в настоящее время label

$('input').on("focus", function() {
   var labelText = $('label[for='+  this.id  +']').text();
   console.log( labelText );  
});
<script src="//ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<label for="inp">This Is My Label Value</label>
<input  id="inp" type="text" >
5
задан Lounges 15 June 2009 в 21:43
поделиться

3 ответа

Рискуя задать глупый вопрос: а зачем вам это нужно? Если вы хотите переходить к тексту и обратно, используйте класс NSPropertyListSerialization.

6
ответ дан 18 December 2019 в 13:18
поделиться

Короткий ответ - нет. Текст описания предназначен для краткого описания содержимого словаря, обычно для целей отладки.

Возможно (но не рекомендуется) проанализировать выходную строку и использовать ее для заполнения нового словаря, но есть Есть много случаев, когда это не сработает. Если, например, ваш исходный словарь содержал какие-либо настраиваемые типы данных, вывод описания будет выглядеть примерно так:

{
    "key 1" = <SomeClass 0x31415927>;
    "key 2" = <SomeClass 0x42424242>;
}

Что, конечно, необратимо.

Из документации разработчика Apple для описание метод в NSDictionary :

Если каждый ключ в получателе является объектом NSString, записи перечислены в возрастающем порядке по ключу, в противном случае порядок, в котором перечислены записи, будет неопределенный. Этот метод предназначен для создания читаемого вывода для целей отладки, а не для сериализации данных. Если вы хотите сохранить данные словаря для последующего извлечения, см. Руководство по программированию списка свойств и Руководство по программированию архивов и сериализации для Какао .

5
ответ дан 18 December 2019 в 13:18
поделиться

Я не думаю, что он есть, вы можете написать метод самостоятельно, перечислив содержимое строки, это выглядит довольно простым форматом для просмотра.

1
ответ дан 18 December 2019 в 13:18
поделиться