为什么输入元素的值不打印?

时间:2017-05-01 01:45:50

标签: javascript

function searchString(user_input, search) {
    var user_string = document.getElementById('user_input');
    var search_string = document.getElementById('search');

    document.write(search_string.value);
}

该文件不打印该值。我是javascript的新手,很难找出原因?我也试过这个:

function searchString(user_input, search) {
    var user_string = document.getElementById('user_input');
    var search_string = document.getElementById('search').value;

    document.write(search_string);
}

但没有结果。我是菜鸟,请帮帮忙?

1 个答案:

答案 0 :(得分:-1)

不要使用document.write。将jQuery添加到您的网站,然后您只需执行以下操作:

var companies = [];

var webdriver = require('selenium-webdriver'),
    By = webdriver.By,
    until = webdriver.until;

var driver = new webdriver.Builder()
    .forBrowser('chrome')
    .build();

driver.manage().timeouts().implicitlyWait(4000);

driver.get('http://edge.pse.com.ph/companyDirectory/form.do');

driver.wait(until.titleIs('Company List'), 1000);

var parent = driver.getWindowHandle();

var count = 1;

while (count < 7) {
    //This will click on each element
    for (var i = 1; i < 51; i++) {
        driver.sleep(1000);
        var company = new Object();
        company.name = driver.findElement(By.xpath('//*[@id="dataList"]/table/tbody/tr[' + i + ']/td[1]/a')).getText();
        company.ticker = driver.findElement(By.xpath('//*[@id="dataList"]/table/tbody/tr[' + i + ']/td[2]/a')).getText();
        company.sector = driver.findElement(By.xpath('//*[@id="dataList"]/table/tbody/tr[' + i + ']/td[4]')).getText();
        company.listingdate = driver.findElement(By.xpath('//*[@id="dataList"]/table/tbody/tr[' + i + ']/td[5]')).getText();

        var element = driver.findElement(By.xpath('//*[@id="dataList"]/table/tbody/tr[' + i + ']/td[1]/a'));
        driver.executeScript("arguments[0].click();", element);

        company.outstandingshares = driver.findElement(By.xpath('//*[@id="contents"]/table[1]/tbody/tr[2]/td[2]')).getText();

        company.price = driver.findElement(By.xpath('//*[@id="contents"]/table[2]/tbody/tr[1]/td[1]')).getText();
        driver.navigate().back();
        companies.push(company);
    }

    count++;
    driver.findElement(By.linkText("'" + count + "'")).click();
}

您可以使用以下方式获取值:

$('#search').val(search_string);

如果你想做一些专业级别的建议,我建议尽早进入Vue.js,它主要是为了解决这类特殊问题。

做&#34; raw&#34; javascript有时是一件好事,但不会让你感到困难。当您必须编辑DOM时,请使用jQuery。如果您想构建一个对网站上的各种数据高度响应的网站,请使用Vue.js.如果您是菜鸟,请不要使用原始javascript。