使用javascript / jQuery

时间:2016-06-10 18:36:03

标签: javascript jquery html dom

我正在http://www.adidas.co.uk/的结帐页面尝试在Google Chrome控制台的控制台中执行一些Javascript。

使用以下内容使用以下ID填充输入元素可以正常工作。 $("#dwfrm_delivery_singleshipping_shippingAddress_addressFields_houseNumber").val("value here")

但是,在不同的元素上,如下所示,绝对没有任何反应,文本也不会出现在输入字段中。

$("#dwfrm_delivery_singleshipping_shippingAddress_addressFields_firstName").val("value here")

您可以通过在http://www.adidas.co.uk/添加随机项目并点击“结帐”来查看该页面。我不认为提供HTML片段会有所帮助,因为我希望页面上的某些内容会干扰。

我尝试通过直接设置value属性来设置值,这也与不更新文本输入具有相同的效果。不过,我可以使用jQuery的.val()方法访问我的设置值,只是对于某些输入字段,它们不会显示在屏幕上。

为什么会这样?

2 个答案:

答案 0 :(得分:1)

@Emrah Izci 试试这个:

Array.prototype.slice.call(document.getElementsByTagName("input")).forEach(function(elem, ind, arr) {elem.value = "TEST"});

我不确定这意味着什么。也许有隐藏的输入可以保留实际值或什么?

答案 1 :(得分:0)

您已经更改了输入的实际值,但显示的值不是这样,因为它是角度驱动的HTML,angularJS控制显示的内容,但不考虑控制台干扰。

修改后运行

$("element").trigger('input');