jQuery: Выбор классом и входным типом

Дано квадратное уравнение: x 2 sup> & minus; 4.0000000 & nbsp; x & nbsp; + 3.9999999 = nbsp; = & nbsp; 0, точные корни из 10 значащих цифр: r 1 & nbsp; = & nbsp; 2.000316228 и r 2 & nbsp; = & nbsp ; 1,999683772

.

Используя float и double, мы можем написать тестовую программу:

#include 
#include 

void dbl_solve(double a, double b, double c)
{
    double d = b*b - 4.0*a*c;
    double sd = sqrt(d);
    double r1 = (-b + sd) / (2.0*a);
    double r2 = (-b - sd) / (2.0*a);
    printf("%.5f\t%.5f\n", r1, r2);
}

void flt_solve(float a, float b, float c)
{
    float d = b*b - 4.0f*a*c;
    float sd = sqrtf(d);
    float r1 = (-b + sd) / (2.0f*a);
    float r2 = (-b - sd) / (2.0f*a);
    printf("%.5f\t%.5f\n", r1, r2);
}   

int main(void)
{
    float fa = 1.0f;
    float fb = -4.0000000f;
    float fc = 3.9999999f;
    double da = 1.0;
    double db = -4.0000000;
    double dc = 3.9999999;
    flt_solve(fa, fb, fc);
    dbl_solve(da, db, dc);
    return 0;
}  

Запуск программы дает мне:

2.00000 2.00000
2.00032 1.99968

Обратите внимание, что цифры не большой, но все же вы получаете эффекты отмены, используя float.

(На самом деле вышеизложенное не является лучшим способом решения квадратных уравнений с использованием чисел с плавающей запятой одинарной или двойной точности, но ответ остается неизменным, даже если используется более стабильный метод .)

109
задан Sampson 30 June 2009 в 20:44
поделиться

3 ответа

Ваш селектор ищет любых потомков элемента флажка, которые имеют класс .myClass .

Попробуйте следующее:

$("input.myClass:checkbox")

Проверьте это в действии .

Я также тестировал это:

$("input:checkbox.myClass")

И это тоже будет работать правильно. По моему скромному мнению, этот синтаксис действительно выглядит довольно некрасиво, поскольку в большинстве случаев я ожидаю, что селекторы стилей : будут последними. Однако, как я уже сказал, любой из них будет работать.

194
ответ дан 24 November 2019 в 03:20
поделиться

Если вы хотите получить входные данные этого типа с этим классом, используйте:

$("input.myClass[type=checkbox]")

синтаксис селектора [] позволяет вам проверять любой из атрибутов элементов. См. спецификации для получения дополнительных сведений

43
ответ дан 24 November 2019 в 03:20
поделиться

Вы должны использовать (для флажков) : флажок и атрибут .name для выбора по классу.

Например:

$("input.aclass:checkbox")

] : checkbox селектор:

Соответствует всем входным элементам типа checkbox. Используя это псевдо-селектор, например $ (': checkbox') , эквивалентен $ ('*: checkbox') который является медленным селектором. Рекомендуется выполнить $ ('input: checkbox') .

Чтобы узнать о селекторах, вы должны прочитать документацию jQuery .

6
ответ дан 24 November 2019 в 03:20
поделиться
Другие вопросы по тегам:

Похожие вопросы: