2015-07-12 69 views
0

我试图改变这种输入从“搜索”到“过滤”后的值更改输入提交值:jQuery的:元素加载

<input type="submit" value="Search" name="refinementSearchButton" class="IDX-refineSubmit" id="IDX-resultsRefineSubmit"> 

我在输入本身,没有控制,通过JavaScript插入。我确实有包装的控制,所以我可以添加JavaScript到页面。

我需要等到所有东西都已经呈现,或者至少是输入本身,然后更改输入值。

我想一旦检测到这样的工作来寻找输入ID,然后改变它:

$(window).load(function() 
{ 
    var i = setInterval(function() 
    { 
     if ($('#IDX-resultsRefineSubmit').length) 
     { 
      clearInterval(i); 

      // execute code here 

    $("#IDX-resultsRefineSubmit").prop('value', 'Filter'); 

     } 
    }, 100); 
}); 

然而,这是行不通的。

任何帮助表示赞赏。

+0

在清除间隔后添加'alert('test');''。那样我们会知道它是否曾经发射过。 – Leeish

+0

#refinementSearchButton是否通过javascript设置值?如果它已经在HTML中设置,那么你不需要使用窗口加载,只要确保JS在HTML – Daniel

+0

之后运行。另外,可以使用$(“#IDX-resultsRefineSubmit”).val('Filter') ;设置值 – Daniel

回答

0

变化$(window).load$(document).ready

https://jsfiddle.net/847gn6w5/

+0

试过这个,但没有奏效。 – AJD

+0

它在我的小提琴中工作。所以你必须有其他的代码破解事物。 – Leeish

+0

是的,这是一个JavaScript的冲突,阻止它。 – AJD

0

正是凭着这是载入页面内容的版本,一个javascript冲突。事实证明,$变量已被使用,这是什么工作:

var jQuery = jQuery.noConflict(); 

    jQuery(function(){ 

    jQuery("#IDX-resultsRefineSubmit").val('Filter'); 

    });