Php 如何在禁用的文本输入中显示值
因此,当用户访问页面时,该表应如下所示:Php 如何在禁用的文本输入中显示值,php,jquery,html,Php,Jquery,Html,因此,当用户访问页面时,该表应如下所示: Marks Per Answer Total Marks Marks Remaining (blank text input) 4 4 (blank text input)
Marks Per Answer Total Marks Marks Remaining
(blank text input) 4 4
(blank text input) 6 6
(disabled text input = 4 (same value as under Total Marks)) 4 0
我的问题是,如何通过更改以下jquery来解决上述两个步骤:
$(function() {
//alert("here");
var questions = $('#markstbl td[class*="_ans"]').length;
//disable single entry
for (var i=0;i<=questions;i++){
if($("[class*=q"+i+"_mark]").length ==1){
var t_marks = $("[class*=q"+i+"_ans]").html();
//alert(t_marks);
$("[class*=q"+i+"_mark]").val(t_marks).attr('readonly',true);
//$("[class*=q"+i+"_mark]").attr('readonly',true);
}
}
//find each question set and add listeners
for (var i=0;i<=questions;i++){
$('input[class*="q'+i+'"]').keyup(function(){
var cl = $(this).attr('class').split(" ")[1]
var questionno = cl.substring(cl.indexOf('q')+1,cl.indexOf('_'));
var tot_marks = $(".q"+questionno+"_ans_org").val();
//alert(tot_marks);
var ans_t=0;
$("[class*=q"+questionno+"_mark]").each(function(){
var num = (isNaN(parseInt($(this).val())))?0:parseInt($(this).val());
ans_t+=parseInt(num);
});
ans_t=tot_marks-ans_t;
//alert(ans_t);
//var fixedno = tot_marks;
var ans = ans_t;
var answerText='<strong>'+ans+'</strong>';
$(".q"+questionno+"_ans").val(ans);
$(".q"+questionno+"_ans_text").html(answerText);
});
}
});
$(函数(){
//警报(“此处”);
变量问题=$(“#markstbl td[class*=”#ans“])。长度;
//禁用单个条目
对于(var i=0;i
您可以使用只读而不是禁用
改变
$("[class*=q"+i+"_mark]").val(t_marks).attr("disabled","disabled");
到
或者,当它聚焦时,你可以让它聚焦出来
<input type="text" id="myTxt" onfocus="$(this).blur()"/>
我已尝试将其更改为只读,但它仍然无法在只读文本框中显示值。您能看到我在jquery中的错误吗?因为正如我所提到的,当我尝试aleart ``标记时,它在aleart中不显示任何数字,这对我来说,它无法检索值。我举了一个例子来检查我们是否可以ign text to readonly t_marks变量肯定有问题,因为我已经更新了你的fiddle,它仍然在进行更改。你能看到jquery代码是否有任何问题吗?我已经包含了上面完整的jquery代码以及完整的php/html代码。你需要使用调试器来查看发生了什么,你可以试试这个,或者我不得不这么做去某个地方,我会在今晚晚些时候回来。我回来后会做一些调试,让您知道发生了什么事情jquery需要编辑到什么位置才能这样做?
$("[class*=q"+i+"_mark]").val(t_marks).attr('readonly',true);
<input type="text" id="myTxt" onfocus="$(this).blur()"/>