[英]Oracle Apex javascript Issue
我正在使用下面的javascript
將值設置為tabular
形式的單元格。
<script type="text/javascript">
function eventListener(pThis)
{
$('input[name="f04"]').change(function(){
var that = this;
var vRow = "f10_"+pThis.id.substr(pThis.id.indexOf('_')+1);
$.post("wwv_flow.show",
{p_request : "APPLICATION_PROCESS=GET_AMOUNT",
p_flow_id : $v("pFlowId"),
p_flow_step_id : $v("pFlowStepId"),
p_instance : $v("pInstance"),
x01 : $(this).val()
},
function(data){
$('input[id="f10_0002"]').val(data);
},
"text"
);
});
}
</script>
我需要使用在值var vRow
代替f10_0002
在$('input[id="f10_0002"]').val(data);
。
我已經嘗試過$('input[id=vRow]').val(data);
和$('input[id='"'+vRow+'"']').val(data);
但是不起作用。 在這些情況下無法使用javascript。 但是$('input[id="f10_0002"]').val(data);
工作。
我如何在var vRow
使用值呢?
嘗試:
$('input[id="' + vRow + '"]').val(data);
盡管使用選擇器input[id=value]
從技術上來說是正確的(由於jQuery屬性選擇器),但這不是必需的。 主要原因是因為您要按ID定位元素。 Javascript有一個特別快速的特殊方法,當您確定要按ID選擇時,我敢肯定jQuery在內部使用了( document.getElementById
)。 要通過ID觸發元素選擇,可以在選擇器字符串的開頭使用#
字符。 由於還嘗試使用變量的值,因此可以將"#"
和vRow
連接vRow
,例如:
$("#" + vRow).val(data);
#
等效於按ID匹配元素。 如果查看jQuery選擇器頁面( http://api.jquery.com/category/selectors ),則會看到有幾個特殊字符可幫助選擇元素。 正如我所說, #
是ID ... .
因此,不是讓jQuery解析字符串“ input [id = value]”並進行大量額外處理,您可以通過簡單地使用#
來幫助jQuery更加高效地進行處理。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.