我试图用更新的值替换字符串。它第一次用更新的值替换,但之后不更新..
这是我的字符串:
QString JAVASCRIPT =
"<script>var PAGE_ID=__PAGE_ID__; var SCROLL_PERCENTAGE=__SCROLL_PERCENTAGE__;</script>"+
"<script type=\"text/javascript\" language=\"javascript\" src=\"scripts/quiz_objects.js\"></script>"+
"<script type=\"text/javascript\" language=\"javascript\" src=\"scripts/swipe.js\"></script>"+
"<script type=\"text/javascript\" language=\"javascript\" src=\"scripts/NativeBridge.js\"></script>"+
"<script type=\"text/javascript\" language=\"javascript\" src=\"scripts/native_base.js\"></script>"+
"<script type=\"text/javascript\" language=\"javascript\" src=\"scripts/native_device.js\"></script>"+
"<script type=\"text/javascript\" language=\"javascript\" src=\"js/mobi.js\"></script>";
我想用更新的值替换"PAGE_ID"
值。
qDebug() << "currentPageInstanceeeeeeeeId" << currentPageInstanceId;
qDebug() << "javaaaaaaaaa" << JAVASCRIPT;
JAVASCRIPT.replace(__PAGE_ID__," " + currentPageInstanceId);
我在currentPageInstanceId
中获得了更新后的值。在这里,我将__PAGE_ID__
替换为currentPageInstanceId
,这是第一次替换它的原因。现在我想替换&#34; PAGE_ID =&#34;之间的值。和&#34;;&#34;。我怎么能更换。我试过这样的。
qDebug() << "currentPageInstanceeeeeeeeId" << currentPageInstanceId;
qDebug() << "javaaaaaaaaa" << JAVASCRIPT;
Qt::CaseSensitivity cs = Qt::CaseSensitive;
script = JAVASCRIPT.indexOf("PAGE_ID=",cs);
script1 = JAVASCRIPT.lastIndexOf(";", cs);
JAVASCRIPT.replace(script+""+ script1," " + currentPageInstanceId);
先谢谢。
答案 0 :(得分:1)
由于您想多次更新__PAGE_ID__
(可能是__SCROLL_PERCENTAGE__
)的值,我会这样做:
将您的JAVASCRIPT值设置为:
QString JAVASCRIPT =
"<script>var PAGE_ID=%1; var SCROLL_PERCENTAGE=%2;</script>"+
"<script type=\"text/javascript\" language=\"javascript\" src=\"scripts/quiz_objects.js\"></script>"+
"<script type=\"text/javascript\" language=\"javascript\" src=\"scripts/swipe.js\"></script>"+
"<script type=\"text/javascript\" language=\"javascript\" src=\"scripts/NativeBridge.js\"></script>"+
"<script type=\"text/javascript\" language=\"javascript\" src=\"scripts/native_base.js\"></script>"+
"<script type=\"text/javascript\" language=\"javascript\" src=\"scripts/native_device.js\"></script>"+
"<script type=\"text/javascript\" language=\"javascript\" src=\"js/mobi.js\"></script>";
然后,当您想要设置值时,请使用arg方法:
QString script = JAVASCRIPT.arg(currentPageInstanceId).arg(currentScrollPercentage);
然后使用脚本。