如何使用CasperJS检索复选框的值

时间:2015-11-30 21:51:07

标签: javascript casperjs

我在使用casperjs在我的网页中为复选框获取值true / false时遇到问题!我确实读过这个主题的其他几个主题,但它没有解决我的问题。

查看我的网页代码: enter image description here

这是我迄今为止的CasperJS代码,它找到了复选框所需的ID:

...
    var numTimes = 20,
    count = -1;
    casper.repeat(numTimes, function() {
        var name = this.evaluate(function(count) {
            var sel = '[id*="connectedToNeType[' + count + ']"]';
            var element = document.querySelector(sel).id;
            return element;
        }, ++count);
        var check_id = name.replace(/_TD|_TR/, '');
        var checked = this.evaluate(function(check_id) {
            var element = document.getElementById(check_id).checked;
            return element;
        });
        this.echo(' checkbox: ' + checked);
    });

我正在使用重复,因为我有多个id,我需要检查复选框的值!

变量 name 将从类似的行中获取几个id,如下面一行:

enter image description here

在示例页面中,我在运行上面的CasperJS时得到以下打印输出:

-> connectedToNeType[0]}
 checkbox: null
-> connectedToNeType[1]}
 checkbox: null
-> connectedToNeType[2]}
 checkbox: null
-> connectedToNeType[3]}
 checkbox: null
-> connectedToNeType[4]}
 checkbox: null
-> connectedToNeType[5]}
 checkbox: null

1 个答案:

答案 0 :(得分:1)

您忘记将// Save data if activity get paused @Override public void onPause() { super.onPause(); Log.d("fragment_signup1", editTextEmail.getText().toString()); userSignUpPreferences.editor.putString(userSignUpPreferences.USER_EMAIL, editTextEmail.getText().toString()) .putString(userSignUpPreferences.USER_USERNAME, editTextUsername.getText().toString()) .apply(); Log.d("fragment_signup1", userSignUpPreferences.preferences.getString(userSignUpPreferences.USER_EMAIL, "null")); } 传递到第二个function expand(index) { if (index.valid && index.model !== model) console.warn("TreeView.expand: model and index mismatch") else modelAdaptor.expand(index) } 来电。此外,您的复选框以“_CB”结尾,您尚未添加。

似乎你想要:

check_id