CJS_Result CJX_Field::getSaveItem( CFX_V8* runtime, const std::vector<v8::Local<v8::Value>>& params) { if (params.size() != 1) return CJS_Result::Failure(JSMessage::kParamError); int32_t iIndex = runtime->ToInt32(params[0]); if (iIndex < 0) return CJS_Result::Success(runtime->NewNull()); CXFA_Node* node = GetXFANode(); if (!node->IsWidgetReady()) return CJS_Result::Success(runtime->NewNull()); Optional<WideString> value = node->GetChoiceListItem(iIndex, true); if (!value) return CJS_Result::Success(runtime->NewNull()); return CJS_Result::Success( runtime->NewString(value->ToUTF8().AsStringView())); }